ApplyFwerCor_oracle: Applies an oracle version of MaxTinfty procedure described in...

Description Usage Arguments Value References See Also Examples

View source: R/ApplyFwer.R

Description

Applies oracle MaxTinfty procedure described in Drton & Perlman (2007) which controls asymptotically the FWER for tests on a correlation matrix. It needs the true correlation matrix.

Usage

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
ApplyFwerCor_oracle(
  data,
  corr_theo,
  alpha = c(),
  stat_test = "empirical",
  method = "MaxTinfty",
  Nboot = 1000,
  stepdown = TRUE,
  vect = FALSE,
  logical = stepdown,
  arr.ind = FALSE
)

Arguments

data

matrix of observations

corr_theo

true matrix of correlations

alpha

level of multiple testing (used if logical=TRUE)

stat_test
'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))

method

only 'MaxTinfty' implemented

Nboot

number of iterations for Monte-Carlo of bootstrap quantile evaluation

stepdown

logical, if TRUE a stepdown procedure is applied

vect

if TRUE returns a vector of adjusted p-values, corresponding to vectorize(cor(data)); if FALSE, returns an array containing the adjusted p-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 stepdown=TRUE and logical=FALSE, returns a list of successive p-values.

arr.ind

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

Value

Returns either

Oracle estimation of the quantile is used, based on the true correlation matrix

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, maxTinftyCor_SD

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
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)
# adjusted p-values:
(res <- ApplyFwerCor_oracle(data,corr_theo,stat_test='empirical',Nboot=1000,stepdown=FALSE))
# significant correlations, level alpha:
alpha <- 0.05
whichCor(res<alpha)

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