Skip to content

In need of help with correlations

4 messages · Sean Farris, Tóth Dénes, PIKAL Petr +1 more

#
I do not know the bioconductor packages you mentioned, but the corr.test
function in the psych package, or the rcorr function in the Hmisc package
should do the work.
Also note that the c() in method=c("pearson") is redundant. Just write
method="pearson" instead (or nothing, since this is the default for both
functions).

HTH,
  Denes
1 day later
#
Hi


r-help-bounces at r-project.org napsal dne 09.04.2011 19:24:38:
somewhat
think
to
430
top
help
that
work).
matrix
and
understand.

In cor.test help page it is said

x, y: numeric vectors of data values.  ?x? and ?y? must have the
          same length.

however your data[,2:30] is most probably data frame, see

str(data[,2:20])

To be able to do cor.test  you need to do cor.test like

cor.test(data[,2], data[,3])

or to do it in some cycle (untested)
result <- matrix(NA, 20,20)

for( i in 2:20) {
for(j in i+1:20) {

result[i,j] <- cor.test(data[,i], data[,j])
}}

But most probably there are other ways.

Regards
Petr
doing
"as.data.frame(t(data))"
analysis
error
over
and
http://www.R-project.org/posting-guide.html
#
On Sat, Apr 9, 2011 at 10:24 AM, Sean Farris <farrissp2 at vcu.edu> wrote:
Sean,

I'm the maintainer of the package WGCNA that does correlation network
analysis of gene expression data. I recommend you check out the
package and the tutorials at

http://www.genetics.ucla.edu/labs/horvath/CoexpressionNetwork/Rpackages/WGCNA/Tutorials/index.html

The package contains a couple useful functions for correlation
p-values. Unlike cor.test which only takes two vectors (not matrices),
you can use the function corAndPvalue to calculate Pearson
correlations and the corresponding p-values for matrices. If you
already have the correlation matrix pre-calculated AND you have no
missing data (i.e., constant number of observations), you can also use
corPvalueStudent to calculate the p-values.

We don't use Spearman correlations much (we prefer the biweight
midcorrelation, functions bicor and bicorAndPvalue, as a robust
alternative to Pearson correlation), but you can approximate the
Spearman p-values by the Student p-values (that are used for Pearson
correlations). Statisticians who read this, please don't execute me
for this suggestion :)

To use the function cor(), you need to transpose the data so that
genes are in columns and samples in rows.
Just be aware that to correlate all probe sets at a time you need a
40k+ times 40k+ matrix to hold the result. Only a large computer (at
least 32GB of memory, possibly needing 64GB) will be able to handle
such a matrix and the necessary manipulations. The WGCNA package
contains methods to construct co-expression networks on such big sets
if necessary.

HTH,

Peter