maxTinftyCor_SD: Multiple testing method of Drton & Perlman (2007) for...

Description Usage Arguments Value References See Also Examples

View source: R/FwerMethodsSD.R

Description

Multiple testing method based on the evaluation of quantile by simulation of observations from the asymptotic distribution (Drton & Perlman (2007)), with stepdown procedure.

Usage

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
maxTinftyCor_SD(
  data,
  alpha = 0.05,
  stat_test = "empirical",
  Nboot = 1000,
  OmegaChap = covDcorNorm(cor(data), stat_test),
  vect = FALSE,
  logical = TRUE,
  arr.ind = FALSE
)

Arguments

data

matrix of observations

alpha

level of multiple testing

stat_test

4 test statistics are available:

'empirical'

√{n}*abs(corr)

'fisher'

√{n-3}*1/2*\log( (1+corr)/(1-corr) )

'student'

√{n-2}*abs(corr)/√(1-corr^2)

'2nd.order'

√{n}*mean(Y)/sd(Y) with Y=(X_i-mean(X_i))(X_j-mean(X_j))

Nboot

number of iterations for Monte-Carlo quantile evaluation

OmegaChap

matrix of covariance of test statistics; optional, useful for oracle estimation and step-down

vect

if TRUE returns a vector of TRUE/FALSE values, corresponding to vectorize(cor(data)); if FALSE, returns an array containing TRUE/FALSE values for each entry of the correlation matrix

logical

if TRUE, returns either a vector or a matrix where each element is equal to TRUE if the corresponding null hypothesis is rejected, and to FALSE if it is not rejected if FALSE, returns a list of successive p-values : element [[i+1]] of the list giving the p-values evaluated on the non-rejected hypothesis at step [[i]]; p-values are either as a vector or a list depending on vect

arr.ind

if TRUE, returns the indexes of the significant correlations, with respect to level alpha

Value

Returns

References

Drton, M., & Perlman, M. D. (2007). Multiple testing and error control in Gaussian graphical model selection. Statistical Science, 22(3), 430-449.

Roux, M. (2018). Graph inference by multiple testing with application to Neuroimaging, Ph.D., Université Grenoble Alpes, France, https://tel.archives-ouvertes.fr/tel-01971574v1.

See Also

ApplyFwerCor, maxTinftyCor

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
 
n <- 100
p <- 10
corr_theo <- diag(1,p)
corr_theo[1,3] <- 0.5
corr_theo[3,1] <- 0.5
data <- MASS::mvrnorm(n,rep(0,p),corr_theo)
alpha <- 0.05
# significant correlations:
maxTinftyCor_SD(data,alpha,stat_test='empirical', arr.ind=TRUE)
# successive p-values
res <- maxTinftyCor_SD(data,stat_test='empirical', logical=FALSE)
lapply(res,FUN=function(x){round(x,2)})
# succesive rejections
lapply(res,FUN=function(x){whichCor(x<alpha)})  

TestCor documentation built on Oct. 23, 2020, 5:31 p.m.