Demographics
Race
df_cbzs_elg %>%
group_by(race) %>%
summarise(N = n()) %>%
ungroup() %>%
mutate(Perc = round(100*(N/sum(N)),2)) %>%
ungroup() %>%
kbl() %>%
kable_styling(bootstrap_options = "hover",
full_width = F,
position = "left")
race
|
N
|
Perc
|
Asian
|
13
|
6.5
|
Black or African American
|
26
|
13.0
|
Hispanic, Latino, or Spanish origin
|
13
|
6.5
|
Other (please specify)
|
1
|
0.5
|
White
|
134
|
67.0
|
multiracial
|
12
|
6.0
|
NA
|
1
|
0.5
|
Gender
df_cbzs_elg %>%
mutate(gender = ifelse(is.na(gender) | gender == "","other",gender)) %>%
group_by(gender) %>%
summarise(N = n()) %>%
ungroup() %>%
mutate(Perc = round(100*(N/sum(N)),2)) %>%
ungroup() %>%
kbl() %>%
kable_styling(bootstrap_options = "hover",
full_width = F,
position = "left")
gender
|
N
|
Perc
|
man
|
100
|
50.0
|
other
|
3
|
1.5
|
woman
|
97
|
48.5
|
Age
df_cbzs_elg %>%
summarise(age_mean = round(mean(age,na.rm = T),2),
age_sd = round(sd(age,na.rm = T),2)) %>%
kbl() %>%
kable_styling(bootstrap_options = "hover",
full_width = F,
position = "left")
age_mean
|
age_sd
|
39.52
|
12.53
|
Education
df_cbzs_elg %>%
group_by(edu) %>%
summarise(N = n()) %>%
ungroup() %>%
mutate(Perc = round(100*(N/sum(N)),2)) %>%
ungroup() %>%
kbl() %>%
kable_styling(bootstrap_options = "hover",
full_width = F,
position = "left")
edu
|
N
|
Perc
|
noHS
|
3
|
1.5
|
GED
|
52
|
26.0
|
2yearColl
|
29
|
14.5
|
4yearColl
|
84
|
42.0
|
MA
|
21
|
10.5
|
PHD
|
9
|
4.5
|
NA
|
2
|
1.0
|
Subjective SES
df_cbzs_elg %>%
group_by(ses) %>%
summarise(N = n()) %>%
ungroup() %>%
mutate(Perc = round(100*(N/sum(N)),2)) %>%
ungroup() %>%
kbl() %>%
kable_styling(bootstrap_options = "hover",
full_width = F,
position = "left")
ses
|
N
|
Perc
|
Lower Class
|
20
|
10.0
|
Lower Middle Class
|
57
|
28.5
|
Middle Class
|
92
|
46.0
|
Upper Middle Class
|
29
|
14.5
|
Upper Class
|
1
|
0.5
|
NA
|
1
|
0.5
|
Working Class
Do you see yourself as part of the working class?
df_cbzs_elg %>%
group_by(wrkclass) %>%
summarise(N = n()) %>%
ungroup() %>%
mutate(Perc = round(100*(N/sum(N)),2)) %>%
ungroup() %>%
arrange(desc(N)) %>%
kbl() %>%
kable_styling(bootstrap_options = "hover",
full_width = F,
position = "left")
wrkclass
|
N
|
Perc
|
Yes
|
154
|
77
|
No
|
30
|
15
|
Not sure
|
16
|
8
|
Income
df_cbzs_elg %>%
ggplot(aes(x = income)) +
geom_bar() +
theme(panel.grid.major = element_blank(),
panel.grid.minor = element_blank(),
panel.background = element_blank(),
axis.ticks = element_blank(),
axis.line = element_line(color = "grey66"),
axis.text.y = element_text(color = "black"),
axis.text.x = element_text(color = "black",
face = "bold"),
axis.title.x = element_blank(),
axis.title.y = element_blank()) +
coord_flip()

Politics
Ideology
Participants were asked about the extent to which they subscribe to
the following ideologies on a scale of 1-7 (select NA if unfamiliar):
Conservatism, Liberalism, Democratic Socialism, Libertarianism,
Progressivism.
means <- df_cbzs_elg %>%
dplyr::select(PID,ideo_con:ideo_prog) %>%
pivot_longer(-PID,
names_to = "ideo",
values_to = "score") %>%
filter(!is.na(score)) %>%
group_by(ideo) %>%
summarise(score = mean(score)) %>%
ungroup()
df_cbzs_elg %>%
dplyr::select(PID,ideo_con:ideo_prog) %>%
pivot_longer(-PID,
names_to = "ideo",
values_to = "score") %>%
filter(!is.na(score)) %>%
ggplot() +
geom_density(aes(x = score), fill = "lightblue") +
scale_x_continuous(limits = c(1,7),
breaks = seq(1,7,1)) +
geom_vline(data = means,mapping = aes(xintercept = score),
color = "black",
linetype = "dashed",
size = 1.1) +
theme(panel.grid.major = element_blank(),
panel.grid.minor = element_blank(),
panel.background = element_blank(),
axis.ticks = element_blank(),
axis.line = element_line(color = "grey66"),
axis.text.y = element_text(color = "black"),
axis.text.x = element_text(color = "black",
face = "bold")) +
facet_wrap(~ideo,nrow = 2)

Party ID
df_cbzs_elg %>%
group_by(party_id) %>%
summarise(N = n()) %>%
ungroup() %>%
mutate(Perc = round(100*(N/sum(N)),2)) %>%
ungroup() %>%
kbl() %>%
kable_styling(bootstrap_options = "hover",
full_width = F,
position = "left")
party_id
|
N
|
Perc
|
Democrat
|
64
|
32
|
Independent
|
66
|
33
|
Republican
|
70
|
35
|
Vote in 2020
df_cbzs_elg %>%
group_by(vote_2020) %>%
summarise(N = n()) %>%
ungroup() %>%
mutate(Perc = round(100*(N/sum(N)),2)) %>%
ungroup() %>%
arrange(desc(N)) %>%
kbl() %>%
kable_styling(bootstrap_options = "hover",
full_width = F,
position = "left")
vote_2020
|
N
|
Perc
|
Joe Biden
|
92
|
46.0
|
Donald Trump
|
63
|
31.5
|
I did not vote
|
37
|
18.5
|
Third-party candidate
|
8
|
4.0
|
Vote in 2024
df_cbzs_elg %>%
group_by(vote_2024) %>%
summarise(N = n()) %>%
ungroup() %>%
mutate(Perc = round(100*(N/sum(N)),2)) %>%
ungroup() %>%
arrange(desc(N)) %>%
kbl() %>%
kable_styling(bootstrap_options = "hover",
full_width = F,
position = "left")
vote_2024
|
N
|
Perc
|
Joe Biden
|
74
|
37.0
|
Donald Trump
|
70
|
35.0
|
I will not vote
|
24
|
12.0
|
Robert F. Kennedy Jr.Â
|
18
|
9.0
|
Other
|
10
|
5.0
|
Jill Stein
|
3
|
1.5
|
Cornel West
|
1
|
0.5
|
Measures
Manipulation check: Class
The policy proposal emphasizes the benefit for working class
individuals seeking homeownership
df_cbzs_elg %>%
ggplot(aes(x = check_class)) +
geom_histogram(fill = "lightblue",
color = "black",
binwidth = 1) +
scale_x_continuous(limits = c(0,8),
breaks = seq(1,7,1)) +
geom_vline(xintercept = mean(df_cbzs_elg$check_class,na.rm = T),
color = "black",
linetype = "dashed",
size = 1.1) +
theme(panel.grid.major = element_blank(),
panel.grid.minor = element_blank(),
panel.background = element_blank(),
axis.ticks = element_blank(),
axis.line = element_line(color = "grey66"),
axis.text.y = element_text(color = "black"),
axis.text.x = element_text(color = "black",
face = "bold"))

Manipulation check: Zero-Sum
This policy proposal emphasizes that one group has gained at the
expense of another group
df_cbzs_elg %>%
ggplot(aes(x = check_zs)) +
geom_histogram(fill = "lightblue",
color = "black",
binwidth = 1) +
scale_x_continuous(limits = c(0,8),
breaks = seq(1,7,1)) +
geom_vline(xintercept = mean(df_cbzs_elg$check_zs,na.rm = T),
color = "black",
linetype = "dashed",
size = 1.1) +
theme(panel.grid.major = element_blank(),
panel.grid.minor = element_blank(),
panel.background = element_blank(),
axis.ticks = element_blank(),
axis.line = element_line(color = "grey66"),
axis.text.y = element_text(color = "black"),
axis.text.x = element_text(color = "black",
face = "bold"))

Support
To what extent do you oppose or support this policy?
df_cbzs_elg %>%
ggplot(aes(x = support)) +
geom_histogram(fill = "lightblue",
color = "black",
binwidth = 1) +
scale_x_continuous(limits = c(0,8),
breaks = seq(1,7,1)) +
geom_vline(xintercept = mean(df_cbzs_elg$support,na.rm = T),
color = "black",
linetype = "dashed",
size = 1.1) +
theme(panel.grid.major = element_blank(),
panel.grid.minor = element_blank(),
panel.background = element_blank(),
axis.ticks = element_blank(),
axis.line = element_line(color = "grey66"),
axis.text.y = element_text(color = "black"),
axis.text.x = element_text(color = "black",
face = "bold"))

Class-based Zero-Sum Beliefs
- If the upper class becomes richer, this comes at the expense of the
working class
- If the upper class makes more money, then the working class makes
less money
- If the upper class does better economically, this does NOT come at
the expense of the working class [R]
alpha = 0.91
df_cbzs_elg %>%
ggplot(aes(x = zs_class)) +
geom_density(fill = "lightblue",
color = "black") +
scale_x_continuous(breaks = seq(1,7,1),
limits = c(1,7)) +
ylab("density") +
geom_vline(xintercept = mean(df_cbzs_elg$zs_class,na.rm = T),
color = "black",
linetype = "dashed",
size = 1.1) +
theme(panel.grid.major = element_blank(),
panel.grid.minor = element_blank(),
panel.background = element_blank(),
axis.ticks = element_blank(),
axis.line = element_line(color = "grey66"),
axis.text.y = element_text(color = "black"),
axis.text.x = element_text(color = "black",
face = "bold"),
axis.title.x = element_text(color = "black",
face = "bold"))
