cor0.estimate.kappa {GeneTS} | R Documentation |
cor0.estimate.kappa
estimates the degree of freedom kappa
of the
null-distribution of the correlation coefficient r
using a variety
of methods.
If method="fisher"
is selected then kappa
is estimated according
to Fisher's rule, i.e. kappa = round(1/var(z.transform(r)) + 2)
.
If method="likelihood"
is selected then the ML estimate is computed
by optimizing kappa
in the null distribution of the sample correlation
coefficient. 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".
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 degree of freedom kappa
of the distribution of the sample correlation
coefficient depends both on the sample size n and the number
p of investigated variables. For rho=0
the degree of freedom
kappa
equals the inverse of the variance of r
.
For p=2 (simple correlation coefficient) the degree of freedom equals kappa = n-1,
whereas for arbitrary p (with p-2 variables eliminated in the partial correlation
coefficient)
kappa = n-p+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.
The estimated degree of freedom kappa
.
Juliane Schaefer (http://www.statistik.lmu.de/~schaefer/) and Korbinian Strimmer (http://www.statistik.lmu.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)