set.seed(2)
support.fetterman.prime <- rbinom(100,1, .525)
head(support.fetterman.prime,10)

mean(support.fetterman.prime)

set.seed(4)
support.fetterman <- rbinom(100,1, .525)
mean(support.fetterman)

set.seed(4)
fett.polls <- NA
for(i in 1:10){
support.fetterman <- rbinom(100,1, .525)
fett.polls[i] <- mean(support.fetterman)
}

sort(fett.polls)

plot(c(.3,.7), c(0,10), type="n")
abline(v=.5, lty=3, lwd=2)
abline(v=mean(support.fetterman.prime), col="firebrick", lty=2)

plot(c(.3,.7), c(0,10), type="n")
abline(v=.5, lty=3, lwd=2)
abline(v=mean(support.fetterman.prime), col="firebrick", lty=2)
arrows(.4,5, .6, 5, col="dodgerblue", code=3)

c(0,1,1,1,0,1,1,0,1,1)

coin <- c(0,1)
sample(coin, 10, replace=T)

num.heads <- NA
for(i in 1:10000){
num.heads[i] <- sum(sample(coin, 10, replace=T))
}
head(num.heads,10)


cols <- c(rep("gray",7), "firebrick", rep("gray", 3))
barplot(prop.table(table(num.heads)), col=cols)

cols <- c(rep("gray",9), "firebrick", rep("gray", 1))
barplot(prop.table(table(num.heads)), col=cols)

sample(c("W","L"), 7, replace=T)
sample(c("W","L"), 7, replace=T)
sample(c("W","L"), 7, replace=T)
sample(c("W","L"), 7, replace=T)
sample(c("W","L"), 7, replace=T)

number.wins <- NA
for(i in 1:10000){
  number.wins[i] <- sum(sample(c("W","L"), 7, replace=T)=="W")
}

table(number.wins)
cols <- c("gray", "gray", "gray", "firebrick", "gray","gray",
         "gray", "gray")
barplot(table(number.wins), col=cols)

streak <- NA

for(i in 1:10000){
x <- sample(c("W","L"), 7, replace=T)
x
out <- rle(x)
out$lengths <- out$lengths[out$values=="L"]
streak[i]<- any(out$lengths>4)
}
prop.table(table(streak))

sample(c("W","L"), 70, replace=T)

number.wins <- NA
for(i in 1:10000){
  number.wins[i] <- sum(sample(c("W","L"), 70, replace=T)=="W")
}

table(number.wins)
cols <- c(rep("gray",10), "firebrick", rep("gray",19))
barplot(table(number.wins), col=cols)

number.wins <- NA
for(i in 1:10000){
  number.wins[i] <- sum(sample(c("W","L"), 7000, replace=T)=="W")
}

barplot(table(number.wins))

pa.dat <- rio::import("https://raw.githubusercontent.com/marctrussler/IIS-Data/refs/heads/main/PAFinalWeeks.csv")
pa.dat <- pa.dat[!is.na(pa.dat$senate.topline) & pa.dat$senate.topline!="Other/Would not Vote",]
pa.dat$vote.fet <- pa.dat$senate.topline=="Democrat"
nrow(pa.dat)

mean(pa.dat$vote.fet, na.rm=T)

vote.fetterman<- NA
for(i in 1:10000){
  vote.fetterman[i] <- sum(sample(c("Fetterman","Oz"), 4369, replace=T)=="Fetterman")
}

barplot(table(vote.fetterman))

table(pa.dat$ideology)
pa.dat$ideo5[pa.dat$ideology=="Very liberal"] <- 1
pa.dat$ideo5[pa.dat$ideology=="Liberal"] <- 2
pa.dat$ideo5[pa.dat$ideology=="Moderate"] <- 3
pa.dat$ideo5[pa.dat$ideology=="Conservative"] <- 4
pa.dat$ideo5[pa.dat$ideology=="Very conservative"] <- 5
mean(pa.dat$ideo5,na.rm=T)

se <- sd(pa.dat$ideo5, na.rm=T)/sqrt(4369)
se

eval <- seq(2.75,3.25,.001)
plot(c(2.75,3.25), c(0,25), type="n")
points(eval, dnorm(eval, mean=3, sd = se), type="l", col="dodgerblue")
abline(v=3, lty=3, lwd=2)
abline(v=mean(pa.dat$ideo5,na.rm=T), col="firebrick", lty=2)

se.n <- sd(pa.dat$ideo5,na.rm=T)/sqrt(10:10000)

plot(10:10000, se.n, type="l")
abline(v=4369, lty=2, col="firebrick")
