Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- options(scipen = 999) # avoid scientific notation
- library(dplyr) # request library
- set.seed(123) # same numbers everytime
- dataset <- data.frame(group = c(rep(0, 5), rep(1, 5)),
- math = c(rnorm(5,8,1), rnorm(5,3,2)),
- reading = c(rnorm(5,7,1), rnorm(5,4,2)))
- dataset[] <-round(dataset[], 1) # round numbers
- # regression model full
- mod <- lm(math ~ reading + group, data=dataset)
- # display results
- summary(mod)
- # regression model only reading
- mod2 <- lm(math ~ reading, data=dataset)
- # display results
- summary(mod2)
- lm(formula = math ~ reading + group, data = dataset)
- Residuals:
- Min 1Q Median 3Q Max
- -2.0430 -0.3655 0.1399 0.5040 1.3478
- Coefficients:
- Estimate Std. Error t value Pr(>|t|)
- (Intercept) 3.5242 1.6383 2.151 0.0685 .
- reading 0.6405 0.2116 3.027 0.0192 *
- group -3.3400 1.0080 -3.314 0.0129 *
- lm(formula = math ~ reading, data = dataset)
- Residuals:
- Min 1Q Median 3Q Max
- -3.5464 -0.8077 -0.0328 1.1261 2.2719
- Coefficients:
- Estimate Std. Error t value Pr(>|t|)
- (Intercept) -0.7441 1.5176 -0.490 0.63706
- reading 1.0908 0.2431 4.487 0.00204 **
- # get means
- descriptive <- dataset %>%
- group_by(group) %>%
- summarise_all(funs(mean(.),n()))
- # insert predicted values for each model
- dataset$math_full <- predict(mod)
- dataset$math_reading_only <- predict(mod2)
- # get the difference between each prediction
- dataset$difference <- abs(dataset$math_full - dataset$math_reading_only)
- # A tibble: 2 x 11
- group math_mean reading_mean math_full_mean math_reading_only_mean difference_mean math_n
- <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <int>
- 1 0 8.2 7.30 8.2 7.218976 0.9810243 5
- 2 1 2.9 4.24 2.9 3.881024 1.3343249 5
- # ... with 4 more variables: reading_n <int>, math_full_n <int>, math_reading_only_n <int>,
- # difference_n <int>
Add Comment
Please, Sign In to add comment