Collider simulation
# Setting seed for reproducibility
set.seed(123)
# Number of observations
n = 1000
# Generating independent variables X1 and X2
X1 = rnorm(n)
X2 = rnorm(n)
# Positive Correlation Scenario
# Collider positively influenced by both X1 and X2
Collider_Positive = X1 + X2 + rnorm(n)
# Negative Correlation Scenario
# Collider positively influenced by X1 and negatively by X2
Collider_Negative = X1 - X2 + rnorm(n)
# Checking correlations
# Before conditioning
cat("Correlation between X1 and X2 before conditioning: ", cor(X1, X2), "\n")
# After conditioning - Positive Scenario
cat("Positive Scenario - After conditioning on the collider: ",
cor(X1[Collider_Positive > median(Collider_Positive)],
X2[Collider_Positive > median(Collider_Positive)]), "\n")
# After conditioning - Negative Scenario
cat("Negative Scenario - After conditioning on the collider: ",
cor(X1[Collider_Negative > median(Collider_Negative)],
X2[Collider_Negative > median(Collider_Negative)]), "\n")
留言
張貼留言