cor0.estimate.kappa {GeneTS} | R Documentation |
cor0.estimate.kappa
estimates the degree of freedom kappa
in the
null-distribution of the correlation coefficient (i.e. assuming that rho=0).
According to Fisher's rule kappa = round(1/var(z) + 2)
the degree of freedom
can be estimated from the variance of the z-transformed sample correlations.
Maximum-likelihood estimates of the degree of freedom is obtained
on the basis of the null distribution of the sample correlation coefficient
(i.e. assuming rho = 0) using method="likelihood"
. This results
almost always in the same estimate of kappa as with the simple Fisher's rule.
If method="robust"
then the variance employed in Fisher's rule
is estimated using the Huber M-estimate of the scale. This is useful
if the null-distribution is slightly "contaminated".
The degree of freedom kappa
depends both on the sample size N and the number
G of investigated variables,
i.e. whether simple or partial correlation coefficients are being considered.
For G=2 (simple correlation coefficient) the degree of freedom equals kappa = N-1,
whereas for arbitrary G (with G-2 variables eliminated in the partial correlation coefficient)
kappa = N-G+1 (see also dcor0
and kappa2N
).
If the empirical sampling distribution is a mixture
distribution then use of cor0.estimate.kappa
may not be appropriate;
instead cor.fit.mixture
may be used.
cor0.estimate.kappa(r, method=c("fisher", "likelihood", "robust"), MAXKAPPA=5000, w=1.0)
r |
vector of sample correlations (assumed true value of rho=0) |
method |
use Fisher's rule (fisher ),
optimize likelihood function of null distribution (likelihood ), or
use Fisher's rule with robust estimate of variance (robust ),
|
MAXKAPPA |
upper bound for the estimated kappa (default: MAXKAPPA=5000); only for likelihood estimate |
w |
winsorize at `w' standard deviations; only for robust estimate |
The estimated degree of freedom kappa.
Juliane Schaefer (http://www.stat.uni-muenchen.de/~schaefer/) and Korbinian Strimmer (http://www.stat.uni-muenchen.de/~strimmer/).
dcor0
, z.transform
,
hubers
, kappa2N
, cor.fit.mixture
.
# load GeneTS library library(GeneTS) # distribution of r for kappa=7 x <- seq(-1,1,0.01) y <- dcor0(x, kappa=7) # simulated data r <- rcor0(1000, kappa=7) hist(r, freq=FALSE, xlim=c(-1,1), ylim=c(0,5)) lines(x,y,type="l") # estimate kappa cor0.estimate.kappa(r)