# Exercise 10.1 set.seed(12321) p <- rep(NA, 1000) for(i in 1:1000) p[i] <- mean(rbinom(100, 1, 0.2)) mean(p) sd(p) hist(p) # Exercise 10.2 set.seed(12321) binary.l <- list() for(i in 1:1000) binary.l[[i]] <- rbinom(100, 1, 0.2) p2 <- sapply(binary.l, mean) tab2 <- lapply(binary.l, table) test2 <- lapply(tab2, chisq.test, correct = FALSE, p = c(0.8, 0.2)) pvalue2 <- sapply(test2, "[[", "p.value") mean(pvalue2 < 0.05) # Exercise 10.3 library(parallel) set.seed(12321) seed.l <- sample(1:999999, 1000) FUN3 <- function(seed) { set.seed(seed) x <- rbinom(100, 1, 0.2) tab <- table(x) test <- chisq.test(tab, correct = FALSE, p = c(0.8, 0.2)) test[["p.value"]] } cl <- makeCluster(rep("localhost", 2), type = "PSOCK") output.l <- parLapply(cl, seed.l, FUN3) stopCluster(cl) pvalue3 <- do.call(c, output.l) mean(pvalue3 < 0.05) # Homework 10 # 1.1 set.seed(12321) sds <- rep(NA, 1000) for(i in 1:1000) sds[i] <- sd(rnorm(100, 0, 1)) mean(sds) - 1 # 1.2 set.seed(12321) dat.l <- list() for(i in 1:1000) dat.l[[i]] <- rnorm(100, 0, 1) sds2 <- sapply(dat.l, sd) mean(sds2) - 1 # 1.3 set.seed(12321) seed.l <- sample(1:999999, 1000) FUN13 <- function(seed) { set.seed(seed) x <- rnorm(100, 0, 1) sd(x) } cl <- makeCluster(rep("localhost", 2), type = "PSOCK") output.l <- parLapply(cl, seed.l, FUN13) stopCluster(cl) sds3 <- do.call(c, output.l) mean(sds3) - 1 # 2.1 set.seed(12321) cover1 <- rep(NA, 1000) n <- 100 for(i in 1:1000) { x <- rnorm(n, 0, 1) y <- 0.5*x + rnorm(n, 0, 0.8) cf <- confint(lm(y ~ x)) cover1[i] <- (cf[2, 1] < 0.5) & (0.5 < cf[2, 2]) } mean(cover1) # 2.2 set.seed(12321) dat.l <- list() for(i in 1:1000) { x <- rnorm(n, 0, 1) y <- 0.5*x + rnorm(n, 0, 0.8) dat.l[[i]] <- data.frame(x, y) } out.l <- lapply(dat.l, lm, formula = y ~ x) cf <- t(sapply(out.l, confint)) cover2 <- (cf[,2] < 0.5) & (0.5 < cf[,4]) mean(cover2) # 2.3 set.seed(12321) seed.l <- sample(1:999999, 1000) FUN23 <- function(seed) { set.seed(seed) n <- 100 x <- rnorm(n, 0, 1) y <- 0.5*x + rnorm(n, 0, 0.8) cf <- confint(lm(y ~ x)) (cf[2, 1] < 0.5) & (0.5 < cf[2, 2]) } cl <- makeCluster(rep("localhost", 2), type = "PSOCK") output.l <- parLapply(cl, seed.l, FUN23) stopCluster(cl) cover3 <- do.call(c, output.l) mean(cover3)