library(micsr) micsr.data::afghan_girls afghan <- read.csv("afghan.csv") names(afghan) with(afghan, table(treat)) round(aggregate(cbind(age_child, age_head_child, edu_head, land, animals, Time, n_people, near_school) ~ treat, data = afghan, FUN = mean), 2) round(c(t.test(age_child ~ treat, data = afghan, var.equal = TRUE)$p.value, t.test(age_head_child ~ treat, data = afghan, var.equal =TRUE)$p.value, t.test(edu_head ~ treat, data = afghan, var.equal = TRUE)$p.value, t.test(land ~ treat, data = afghan, var.equal = TRUE)$p.value, t.test(animals ~ treat, data = afghan, var.equal = TRUE)$p.value, t.test(Time~ treat, data = afghan, var.equal = TRUE)$p.value, t.test(n_people ~ treat, data = afghan, var.equal = TRUE)$p.value, t.test(near_school ~ treat, data = afghan, var.equal =TRUE)$p.value),2) round(c(t.test(age_child ~ treat, data = afghan)$p.value, t.test(age_head_child ~ treat, data = afghan)$p.value, t.test(edu_head ~ treat, data = afghan)$p.value, t.test(land ~ treat, data = afghan)$p.value, t.test(animals ~ treat, data = afghan)$p.value, t.test(Time~ treat, data = afghan)$p.value, t.test(n_people ~ treat, data = afghan)$p.value, t.test(near_school ~ treat, data = afghan)$p.value),2) t.test(near_school ~ treat, data = afghan, var.equal =TRUE) summary(lm(near_school ~ treat, afghan))$coefficients n <- as.numeric(with(afghan, table(treat))) round(rbind(with(afghan, table(heads_child, treat))[2,], with(afghan, table(heads_child, treat))[2,]/n),2) round(rbind(with(afghan, table(girls, treat))[1,], with(afghan, table(girls, treat))[1,]/n),2) round(rbind(with(afghan, table(girls, treat))[2,], with(afghan, table(girls, treat))[2,]/n),2) round(rbind(with(afghan, table(farmer, treat))[1,], with(afghan, table(farmer, treat))[1,]/n),2) round(rbind(with(afghan, table(farmer, treat))[2,], with(afghan, table(farmer, treat))[2,]/n),2) afghan$ethny <- "Other" afghan$ethny[afghan$farsi == 1] <- "farsi" afghan$ethny[afghan$tajik == 1] <- "tajik" round(rbind(with(afghan, table(ethny, treat))[1,], with(afghan, table(ethny, treat))[1,]/n),2) round(rbind(with(afghan, table(ethny, treat))[2,], with(afghan, table(ethny, treat))[2,]/n),2) round(rbind(with(afghan, table(ethny, treat))[3,], with(afghan, table(ethny, treat))[3,]/n),2) obs_freq <- prop.table(table(afghan$treat, afghan$heads_child)) freq_treat <- prop.table(table(afghan$treat)) freq_heads_child <- prop.table(table(afghan$heads_child)) ind_freq <- outer(freq_treat, freq_heads_child) sum((obs_freq - ind_freq) ^ 2 / ind_freq) * nrow(afghan) chisq.test(table(afghan$treat, afghan$heads_child), correct = FALSE) pchisq(2.970317, 1, lower.tail = FALSE) obs_freq <- prop.table(table(afghan$treat, afghan$girls)) freq_treat <- prop.table(table(afghan$treat)) freq_girls <- prop.table(table(afghan$girls)) ind_freq <- outer(freq_treat, freq_girls) sum((obs_freq - ind_freq) ^ 2 / ind_freq) * nrow(afghan) chisq.test(table(afghan$treat, afghan$girls), correct = FALSE) pchisq(0.5750879, 1, lower.tail = FALSE) obs_freq <- prop.table(table(afghan$treat, afghan$farmer)) freq_treat <- prop.table(table(afghan$treat)) freq_farmer <- prop.table(table(afghan$farmer)) ind_freq <- outer(freq_treat, freq_farmer) sum((obs_freq - ind_freq) ^ 2 / ind_freq) * nrow(afghan) chisq.test(table(afghan$treat, afghan$farmer), correct = FALSE) pchisq(0.1855524, 1, lower.tail = FALSE) obs_freq <- prop.table(table(afghan$treat, afghan$ethny)) freq_treat <- prop.table(table(afghan$treat)) freq_ethny <- prop.table(table(afghan$ethny)) ind_freq <- outer(freq_treat, freq_ethny) sum((obs_freq - ind_freq) ^ 2 / ind_freq) * nrow(afghan) chisq.test(table(afghan$treat, afghan$ethny), correct = FALSE) pchisq(2.846, 2, lower.tail = FALSE) par(mfrow=c(1,2)) with(afghan[afghan$girls==1,], boxplot(score ~ treat)) with(afghan[afghan$girls == 0, ], boxplot(score ~ treat)) t.test(score ~ treat, data = afghan, subset = (girls == 1), var.equal = TRUE) mean(afghan$score[afghan$treat == 1 & afghan$girls == 1], na.rm = TRUE) - mean(afghan$score[afghan$treat == 0 & afghan$girls == 1], , na.rm = TRUE) fit <- lm(score ~ treat, data = afghan, subset = (girls==1)) summary(fit) fit2 <- lm(score ~ treat + Time + n_people + animals + near_school + heads_child + age_child + age_head_child + farmer + land + ethny + chagcharan + edu_head, data = afghan, subset = (girls==1)) summary(fit2)