library(tidyverse)

df <- data.frame(treat = c(T, T, F, T, F, F, F, T, T, F), y.obs = c(84000, 70000, 44000, 56000, 59000, 53000, 61000, 61000, 64000, 54000))
kableExtra::kable(df)

df$y.treat[df$treat]  <- df$y.obs[df$treat]
df$y.control[!df$treat]  <- df$y.obs[!df$treat]
df$treat.effect <- NA
kableExtra::kable(df)

mean(df$y.treat, na.rm=T)
mean(df$y.control, na.rm=T)

df$y.treat[is.na(df$y.treat)] <- mean(df$y.treat,na.rm=T)
df$y.control[is.na(df$y.control)] <- mean(df$y.control,na.rm=T)
kableExtra::kable(df)

df$treat.effect <- df$y.treat - df$y.control
kableExtra::kable(df)

mean(df$treat.effect)

t.test(df$y.obs ~ df$treat)

lm(df$y.obs ~ df$treat)

dat <- rio::import("https://github.com/marctrussler/IIS-Data/raw/refs/heads/main/APSRExperiment.Rds", trust=T)

head(dat)

t.test(dat$divbook ~ dat$treatment)

t.test(dat$divbook[dat$pid3=="Democrats"] ~ dat$treatment[dat$pid3=="Democrats"])
t.test(dat$divbook[dat$pid3=="Republicans"] ~ dat$treatment[dat$pid3=="Republicans"])
t.test(dat$divbook[dat$pid3=="Independents"] ~ dat$treatment[dat$pid3=="Independents"])

m1 <- lm(divbook ~ treatment, data=dat)
summary(m1)

m2 <- lm(divbook ~ treatment*pid3, data=dat)
summary(m2)

#install.packages("pwr")
pwr::pwr.t.test(
  d=.2,
  n=450,
  sig.level=.05
)


pwr::pwr.t.test(
  d=.2,
  power=.95,
  sig.level=.05
)
