Nothing
library(rockchalk)
N <- 100
dat <- genCorrelatedData(N = N, means = c(100, 200), sds = c(20, 30),
rho = 0.4, stde = 10)
dat$x3 <- rnorm(100, m = 40, s = 4)
m1 <- lm(y ~ x1 * x2 + x3, data = dat)
summary(m1)
mcDiagnose(m1)
m1c <- meanCenter(m1)
summary(m1c)
mcDiagnose(m1c)
m2 <- lm(y ~ x1 * x2 + x3, data = dat)
summary(m2)
mcDiagnose(m2)
m2c <- meanCenter(m2, standardize = TRUE)
summary(m2c)
mcDiagnose(m2c)
m2c2 <- meanCenter(m2, centerOnlyInteractors = FALSE)
summary(m2c2)
m2c3 <- meanCenter(m2, centerOnlyInteractors = FALSE, centerDV = TRUE)
summary(m2c3)
dat <- genCorrelatedData(N = N, means = c(100, 200), sds = c(20, 30),
rho = 0.4, stde = 10)
dat$x3 <- rnorm(100, m = 40, s = 4)
dat$x3 <- gl(4, 25, labels = c("none", "some", "much", "total"))
m3 <- lm(y ~ x1 * x2 + x3, data = dat)
summary(m3)
## visualize, for fun
plotPlane(m3, "x1", "x2")
m3c1 <- meanCenter(m3)
summary(m3c1)
## Not exactly the same as a "standardized" regression because the
## interactive variables are centered in the model frame,
## and the term "x1:x2" is never centered again.
m3c2 <- meanCenter(m3, centerDV = TRUE,
centerOnlyInteractors = FALSE, standardize = TRUE)
summary(m3c2)
m3st <- standardize(m3)
summary(m3st)
## Make a bigger dataset to see effects better
N <- 500
dat <- genCorrelatedData(N = N, means = c(200,200), sds = c(60,30),
rho = 0.2, stde = 10)
dat$x3 <- rnorm(100, m = 40, s = 4)
dat$x3 <- gl(4, 25, labels = c("none", "some", "much", "total"))
dat$y2 <- with(dat,
0.4 - 0.15 * x1 + 0.04 * x1^2 -
drop(contrasts(dat$x3)[dat$x3, ] %*% c(-1.9, 0, 5.1)) +
1000* rnorm(nrow(dat)))
dat$y2 <- drop(dat$y2)
m4literal <- lm(y2 ~ x1 + I(x1*x1) + x2 + x3, data = dat)
summary(m4literal)
plotCurves(m4literal, plotx="x1")
## Superficially, there is multicollinearity (omit the intercept)
cor(model.matrix(m4literal)[ -1 , -1 ])
m4literalmc <- meanCenter(m4literal, terms = "x1")
summary(m4literalmc)
m4literalmcs <- meanCenter(m4literal, terms = "x1", standardize = TRUE)
summary(m4literalmcs)
m4 <- lm(y2 ~ poly(x1, 2, raw = TRUE) + x2 + x3, data = dat)
summary(m4)
plotCurves(m4, plotx="x1")
m4mc1 <- meanCenter(m4, terms = "x1")
summary(m4mc1)
m4mc2 <- meanCenter(m4, terms = "x1", standardize = TRUE)
summary(m4mc2)
m4mc3 <- meanCenter(m4, terms = "x1", centerDV = TRUE, standardize = TRUE)
summary(m4mc3)
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.