[R] How to extract x rows to get x pvalues using t.test
Adaikalavan Ramasamy
ramasamy at cancer.org.uk
Wed Mar 16 01:32:25 CET 2005
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
>
More information about the R-help
mailing list