[R] RE: Comparison of correlation coefficients - Details
Christian.Stratowa@vie.boehringer-ingelheim.com
Christian.Stratowa at vie.boehringer-ingelheim.com
Wed Jul 21 13:19:59 CEST 2004
Dear all
I apologize for cross-posting, but first it is accepted custom to
thank the repliers and give a summary, and second I have still
the feeling that this problem might be a general statistical problem
and not necessarily related to microarrays only, but I might be wrong.
First, I want to thank Robert Gentleman, Mark Kimpel and Mark Reiners
for their kind replies. Robert Gentleman kindly pointed me to the
Bioconductor package "MeasurementError.cor" as alternative to "cor.test".
Mark Kimpel suggested that 2-way factorial Anova or the Bioconductor
package "limma", respectively, may be helpful. Mark Reiners suggested
to use the p-value of "cor.test" to test the significance.
Maybe, I miss the point, but being not a statistician I am still unsure
if it is possible to compare correlation coefficients from different
sample sets. Both, the p-values from "cor.test" and from "compcorr",
could be used as measure of the significance.
However, is it possible to "normalize" correlation coefficients from
different sample sets? Could an expression such as "corr * (1 - pval)"
be used for normalization? Maybe, it is not possible to normalize
correlation coefficients?
Would a barplot comparing the correlation coefficients between two
genes for different tissues be meaningful? (Alternatively, I have
tried to use (1-pval) to calculate the gray-level of the bars.)
Any further suggestions would be appreciated very much.
Best regards
Christian Stratowa
-----Original Message-----
From: Stratowa,Dr.,Christian FEX BIG-AT-V
Sent: Monday, July 19, 2004 15:00
To: 'bioconductor at stat.math.ethz.ch'
Subject: Comparison of correlation coefficients - Details
Dear all
Maybe, my last mail did not explain my problem correctly:
Since we are interested, which genes have similar expression profiles in a
certain tissue or in different tissues, we have calculated the
correlation coefficients between all 46,000 x 46,000 genes of the
HG_U133A/B chipset for about 70 tissues, where the number of samples
per tissue ranges from 10 to more than 200.
While writing an R-function to display the correlation coefficients between
gene A and B in the different tissues as bar-graph, I realized that it may
not be correct to compare the different correlation coefficients directly,
since the number of samples per tissue varyies between 10 and 200.
Thus, the question is: Is there a way to compare different correlation
coefficients and/or apply some kind of normalization?
Assuming that this might be a well known statistical problem I was browsing
statistics books and the web for more information, but could only find the
function "compcorr" which gives a p-value how well you can trust the
comparison of two correlation coefficients from different samples.
Even though this might currently not be a direct Bioconductor question, it
is certainly a microarray analysis related question. Any suggestions how to
solve this problem would be greatly appreciated.
Best regards
Christian Stratowa
-----Original Message-----
From: Stratowa,Dr.,Christian FEX BIG-AT-V
Sent: Tuesday, July 13, 2004 14:40
To: 'bioconductor at stat.math.ethz.ch'
Subject: Comparison of correlation coefficients
Dear Bioconductor expeRts
Is it possible to compare correlation coefficients or to normalize
different correlation coefficients?
Concretely, we have the following situation:
We have gene expression profiles for different tissues, where the
number of samples per tissue are different, ranging from 10 to 250.
We are able to determine the correlation between two genes A and B
for each tissue separately, using "cor.test". However, the question
arises if the correlation coefficients between different tissues can
be compared or if they must somehow be "normalized", since the
number of samples per tissue varyies.
Searching the web I found the function "compcorr", see:
http://www.fon.hum.uva.nl/Service/Statistics/Two_Correlations.html
http://ftp.sas.com/techsup/download/stat/compcorr.html
and implemented it in R:
compcorr <- function(n1, r1, n2, r2){
# compare two correlation coefficients
# return difference and p-value as list(diff, pval)
# Fisher Z-transform
zf1 <- 0.5*log((1 + r1)/(1 - r1))
zf2 <- 0.5*log((1 + r2)/(1 - r2))
# difference
dz <- (zf1 - zf2)/sqrt(1/(n1 - 3) + (1/(n2 - 3)))
# p-value
pv <- 2*(1 - pnorm(abs(dz)))
return(list(diff=dz, pval=pv))
}
Would it make sense to use the resultant p-value to "normalize" the
correlation coefficients, using: corr <- corr * compcorr()$pval
Is there a better way or an alternative to "normalize" the correlation
coefficients obtained for different tissues?
Thank you in advance for your help.
Since in the company I am not subscribed to bioconductor-help, could you
please reply to me (in addition to bioconductor-help)
P.S.: I have posted this first at r-help and it was suggested to me to
post it here, too.
Best regards
Christian Stratowa
==============================================
Christian Stratowa, PhD
Boehringer Ingelheim Austria
Dept NCE Lead Discovery - Bioinformatics
Dr. Boehringergasse 5-11
A-1121 Vienna, Austria
Tel.: ++43-1-80105-2470
Fax: ++43-1-80105-2782
email: christian.stratowa at vie.boehringer-ingelheim.com
More information about the R-help
mailing list