InvariantEnvironmentPrediction {CondIndTests} | R Documentation |
Invariant environment prediction.
Description
Tests the null hypothesis that Y and E are independent given X.
Usage
InvariantEnvironmentPrediction(Y, E, X, alpha = 0.05, verbose = FALSE,
trainTestSplitFunc = caTools::sample.split,
argsTrainTestSplitFunc = list(Y = E, SplitRatio = 0.8),
test = propTestTargetE, mtry = sqrt(NCOL(X)), ntree = 100,
nodesize = 5, maxnodes = NULL, permute = TRUE,
returnModel = FALSE)
Arguments
Y |
An n-dimensional vector. |
E |
An n-dimensional vector. If |
X |
A matrix or dataframe with n rows and p columns. |
alpha |
Significance level. Defaults to 0.05. |
verbose |
If |
trainTestSplitFunc |
Function to split sample. Defaults to stratified sampling
using |
argsTrainTestSplitFunc |
Arguments for sampling splitting function. |
test |
Unconditional independence test that tests whether the out-of-sample
prediction accuracy is the same when using X only vs. X and Y as predictors for E.
Defaults to |
mtry |
Random forest parameter: Number of variables randomly sampled as
candidates at each split. Defaults to |
ntree |
Random forest parameter: Number of trees to grow. Defaults to 100. |
nodesize |
Random forest parameter: Minimum size of terminal nodes. Defaults to 5. |
maxnodes |
Random forest parameter: Maximum number of terminal nodes trees in the forest can have.
Defaults to |
permute |
Random forest parameter: If |
returnModel |
If |
Value
A list with the following entries:
-
pvalue
The p-value for the null hypothesis that Y and E are independent given X. -
model
The fitted models ifreturnModel = TRUE
.
Examples
# Example 1
n <- 1000
E <- rbinom(n, size = 1, prob = 0.2)
X <- 4 + 2 * E + rnorm(n)
Y <- 3 * (X)^2 + rnorm(n)
InvariantEnvironmentPrediction(Y, as.factor(E), X)
# Example 2
E <- rbinom(n, size = 1, prob = 0.2)
X <- 4 + 2 * E + rnorm(n)
Y <- 3 * E + rnorm(n)
InvariantEnvironmentPrediction(Y, as.factor(E), X)
# Example 3
E <- rnorm(n)
X <- 4 + 2 * E + rnorm(n)
Y <- 3 * (X)^2 + rnorm(n)
InvariantEnvironmentPrediction(Y, E, X, test = wilcoxTestTargetY)
InvariantEnvironmentPrediction(Y, X, E, test = wilcoxTestTargetY)