Message-ID: <1110933145.6001.24.camel@dhcp-63.ccc.ox.ac.uk>
Date: 2005-03-16T00:32:25Z
From: Adaikalavan Ramasamy
Subject: How to extract x rows to get x pvalues using t.test
In-Reply-To: <E03EBB50FF2C024781A6E4460AD58F0607C1AC@swosu-mbx01.admin.swosu.edu>
You will need to _apply_ the t-test row by row.
apply( genes, 1, function(x) t.test( x[1:2], x[3:4] )$p.value )
apply() is a C optimised version of for. Running the above code on a
dataset with 56000 rows and 4 columns took about 63 seconds on my 1.6
GHz Pentium machine with 512 Mb RAM. See help("apply") for more details.
Regards, Adai
On Tue, 2005-03-15 at 11:59 -0600, Jagarlamudi, Choudary wrote:
> Hi all,
>
> My data
> genes
> [,1] [,2] [,3] [,4]
> [1,] 25 72 23 55
> [2,] 34 53 41 33
> [3,] 26 43 26 44
> [4,] 36 64 64 22
> [5,] 47 72 67 34
>
> stu<-t.test(genes[,1:2],genes[,3:4])
> > stu$p.value
> [1] 0.4198002
>
> i get 1 pvalue for the entire col1:col2 Vs col3:col4. I am trying to get 5 p values for the 5 rows i have.
> I am trying to avoid a for loop coz my actual data has 56000 rows and its taking more than 4 minutes to
> compute.
>
> Thanks in advance.
>
> Choudary Jagarlamudi
> Instructor
> Southwestern Oklahoma State University
> STF 254
> 100 campus Drive
> Weatherford OK 73096
> Tel 580-774-7136
>
> [[alternative HTML version deleted]]
>
> ______________________________________________
> R-help at stat.math.ethz.ch mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html
>