Courtpacking

Courtpacking Data

courtpacking_data <- final_data |> 
  filter(condition %in% c(3, 6, 9, 12))

#support for candidate
courtpacking_data |> 
  ggplot(aes(x = support_election)) +
  geom_bar() +
  facet_wrap(~politician_gender + politician_party)

courtpacking_data |> 
  ggplot(aes(x = support_election_lumped)) +
  geom_bar() +
  facet_wrap(~politician_gender + politician_party)

#recognition of antidemocratic behavior

courtpacking_data |> 
  ggplot(aes(x = threaten_country)) +
  geom_bar() +
  facet_wrap(~politician_gender + politician_party)

courtpacking_data |> 
  ggplot(aes(x = threaten_country_lumped)) +
  geom_bar() +
  facet_wrap(~politician_gender + politician_party)

#Opinion on bill

courtpacking_data |> 
  ggplot(aes(x = opinion_bill)) +
  geom_bar() +
  facet_wrap(~politician_gender + politician_party)

courtpacking_data |> 
  ggplot(aes(x = opinion_bill_lumped)) +
  geom_bar() +
  facet_wrap(~politician_gender + politician_party)

courtpacking_difference_in_means <- courtpacking_data |> 
  group_by(politician_party, politician_gender) |> 
  summarize(mean_support_for_politician = mean(support_election, na.rm = TRUE),
            sd_support_for_politician = sd(support_election, na.rm = TRUE),
            mean_antidemocratic_recognition = mean(threaten_country, na.rm = TRUE),
            sd_antidemocratic_recognition = sd(threaten_country, na.rm = TRUE),
            mean_support_for_bill = mean(opinion_bill, na.rm = TRUE),
            sd_support_for_bill = sd(opinion_bill, na.rm = TRUE),
            n = n(),
            .groups = "drop") |> 
  print()
# A tibble: 4 × 9
  politician_party politician_gender mean_support_for_politician
  <fct>            <fct>                                   <dbl>
1 Democrat         Male Politician                          3.27
2 Democrat         Female Politician                        3.98
3 Republican       Male Politician                          3.17
4 Republican       Female Politician                        3.01
# ℹ 6 more variables: sd_support_for_politician <dbl>,
#   mean_antidemocratic_recognition <dbl>, sd_antidemocratic_recognition <dbl>,
#   mean_support_for_bill <dbl>, sd_support_for_bill <dbl>, n <int>

Hypothesis 1: support for a politician increases under female candidates, regardless of party

#simple model

courts_h1 <- lm(support_election ~ politician_gender * politician_party, data = courtpacking_data)

summary(courts_h1)

Call:
lm(formula = support_election ~ politician_gender * politician_party, 
    data = courtpacking_data)

Residuals:
    Min      1Q  Median      3Q     Max 
-2.9808 -1.9808 -0.0128  1.7290  3.9872 

Coefficients:
                                                              Estimate
(Intercept)                                                     3.2710
politician_genderFemale Politician                              0.7098
politician_partyRepublican                                     -0.1032
politician_genderFemale Politician:politician_partyRepublican  -0.8648
                                                              Std. Error
(Intercept)                                                       0.1483
politician_genderFemale Politician                                0.2094
politician_partyRepublican                                        0.2118
politician_genderFemale Politician:politician_partyRepublican     0.2976
                                                              t value Pr(>|t|)
(Intercept)                                                    22.056  < 2e-16
politician_genderFemale Politician                              3.390 0.000745
politician_partyRepublican                                     -0.487 0.626367
politician_genderFemale Politician:politician_partyRepublican  -2.906 0.003798
                                                                 
(Intercept)                                                   ***
politician_genderFemale Politician                            ***
politician_partyRepublican                                       
politician_genderFemale Politician:politician_partyRepublican ** 
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.846 on 612 degrees of freedom
Multiple R-squared:  0.03943,   Adjusted R-squared:  0.03473 
F-statistic: 8.375 on 3 and 612 DF,  p-value: 1.834e-05
plot_model(courts_h1, terms = c("politician_party", "politician_gender"),
           type= "pred")

#include covariates

courts_h1_covariates <- lm(support_election ~ politician_gender * politician_party + survey_partyid + respondent_gender, data = courtpacking_data)

summary(courts_h1_covariates)

Call:
lm(formula = support_election ~ politician_gender * politician_party + 
    survey_partyid + respondent_gender, data = courtpacking_data)

Residuals:
    Min      1Q  Median      3Q     Max 
-3.1996 -1.7307 -0.0788  1.3961  4.3378 

Coefficients:
                                                              Estimate
(Intercept)                                                    2.94730
politician_genderFemale Politician                             0.66359
politician_partyRepublican                                    -0.12885
survey_partyid                                                 0.10944
respondent_genderFemale Respondent                            -0.17739
politician_genderFemale Politician:politician_partyRepublican -0.86133
                                                              Std. Error
(Intercept)                                                      0.21614
politician_genderFemale Politician                               0.21027
politician_partyRepublican                                       0.21256
survey_partyid                                                   0.04002
respondent_genderFemale Respondent                               0.14914
politician_genderFemale Politician:politician_partyRepublican    0.29846
                                                              t value Pr(>|t|)
(Intercept)                                                    13.636  < 2e-16
politician_genderFemale Politician                              3.156  0.00168
politician_partyRepublican                                     -0.606  0.54461
survey_partyid                                                  2.735  0.00643
respondent_genderFemale Respondent                             -1.189  0.23475
politician_genderFemale Politician:politician_partyRepublican  -2.886  0.00404
                                                                 
(Intercept)                                                   ***
politician_genderFemale Politician                            ** 
politician_partyRepublican                                       
survey_partyid                                                ** 
respondent_genderFemale Respondent                               
politician_genderFemale Politician:politician_partyRepublican ** 
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.836 on 610 degrees of freedom
Multiple R-squared:  0.05292,   Adjusted R-squared:  0.04516 
F-statistic: 6.817 on 5 and 610 DF,  p-value: 3.361e-06
plot_model(courts_h1_covariates, terms = c("politician_party", "politician_gender"),
           type= "pred")

statistically significant difference for democrat condition, but not republican.

also statistically significant difference in effect of gender for republican VERSUS democrat.

When we account for covariates, this still holds.

Hypothesis 2: this effect will be more pronounced among outparty voters than inparty voters

H2a: Overall effect

#simple model

courts_h2 <- lm(support_election ~ politician_gender * inparty_outparty, data = courtpacking_data)

summary(courts_h2)

Call:
lm(formula = support_election ~ politician_gender * inparty_outparty, 
    data = courtpacking_data)

Residuals:
    Min      1Q  Median      3Q     Max 
-3.6697 -1.6212 -0.3396  1.3303  4.3788 

Coefficients:
                                                           Estimate Std. Error
(Intercept)                                                 2.62121    0.11934
politician_genderFemale Politician                          0.24578    0.16773
inparty_outpartyInparty                                     1.71841    0.20211
politician_genderFemale Politician:inparty_outpartyInparty  0.08432    0.28392
                                                           t value Pr(>|t|)    
(Intercept)                                                 21.964   <2e-16 ***
politician_genderFemale Politician                           1.465    0.143    
inparty_outpartyInparty                                      8.502   <2e-16 ***
politician_genderFemale Politician:inparty_outpartyInparty   0.297    0.767    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.679 on 612 degrees of freedom
Multiple R-squared:  0.2054,    Adjusted R-squared:  0.2015 
F-statistic: 52.73 on 3 and 612 DF,  p-value: < 2.2e-16
plot_model(courts_h2, terms = c("inparty_outparty", "politician_gender"),
           type= "pred")

#include covariates

courts_h2_covariates <- lm(support_election ~ politician_gender * inparty_outparty + survey_partyid + respondent_gender, data = courtpacking_data)

summary(courts_h2_covariates)

Call:
lm(formula = support_election ~ politician_gender * inparty_outparty + 
    survey_partyid + respondent_gender, data = courtpacking_data)

Residuals:
    Min      1Q  Median      3Q     Max 
-3.8523 -1.4263 -0.1075  1.2271  4.6229 

Coefficients:
                                                           Estimate Std. Error
(Intercept)                                                 2.34694    0.19353
politician_genderFemale Politician                          0.20810    0.16823
inparty_outpartyInparty                                     1.69061    0.20224
survey_partyid                                              0.07940    0.03645
respondent_genderFemale Respondent                         -0.04920    0.13537
politician_genderFemale Politician:inparty_outpartyInparty  0.10007    0.28340
                                                           t value Pr(>|t|)    
(Intercept)                                                 12.127  < 2e-16 ***
politician_genderFemale Politician                           1.237   0.2166    
inparty_outpartyInparty                                      8.359 4.28e-16 ***
survey_partyid                                               2.178   0.0298 *  
respondent_genderFemale Respondent                          -0.363   0.7164    
politician_genderFemale Politician:inparty_outpartyInparty   0.353   0.7241    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.675 on 610 degrees of freedom
Multiple R-squared:  0.2116,    Adjusted R-squared:  0.2052 
F-statistic: 32.75 on 5 and 610 DF,  p-value: < 2.2e-16
plot_model(courts_h2_covariates, terms = c("inparty_outparty", "politician_gender"),
           type= "pred")

#compare this to next chunk - is it needed?

H2b: Split to look at just Democratic candidates, then just Republican

#################repeated for just democratic candidate ###############

dem_politician_courtpacking_data <- courtpacking_data |> 
  filter(politician_party == "Democrat")

courts_h2a <- lm(support_election ~ politician_gender * inparty_outparty, data = dem_politician_courtpacking_data)

summary(courts_h2a)

Call:
lm(formula = support_election ~ politician_gender * inparty_outparty, 
    data = dem_politician_courtpacking_data)

Residuals:
    Min      1Q  Median      3Q     Max 
-4.2812 -1.5340 -0.0761  1.0966  4.4660 

Coefficients:
                                                           Estimate Std. Error
(Intercept)                                                2.533981   0.161159
politician_genderFemale Politician                         0.542106   0.234627
inparty_outpartyInparty                                    2.196789   0.278239
politician_genderFemale Politician:inparty_outpartyInparty 0.008374   0.385089
                                                           t value Pr(>|t|)    
(Intercept)                                                 15.723  < 2e-16 ***
politician_genderFemale Politician                           2.311   0.0215 *  
inparty_outpartyInparty                                      7.895 5.18e-14 ***
politician_genderFemale Politician:inparty_outpartyInparty   0.022   0.9827    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.636 on 307 degrees of freedom
Multiple R-squared:  0.3217,    Adjusted R-squared:  0.315 
F-statistic: 48.53 on 3 and 307 DF,  p-value: < 2.2e-16
plot_model(courts_h2a, terms = c("inparty_outparty", "politician_gender"),
           type= "pred")

#####################just republican candidate ##################
rep_politician_courtpacking_data <- courtpacking_data |> 
  filter(politician_party == "Republican")

courts_h2b <- lm(support_election ~ politician_gender * inparty_outparty, data = rep_politician_courtpacking_data)

summary(courts_h2b)

Call:
lm(formula = support_election ~ politician_gender * inparty_outparty, 
    data = rep_politician_courtpacking_data)

Residuals:
    Min      1Q  Median      3Q     Max 
-2.9630 -1.6937 -0.6937  1.2842  4.3063 

Coefficients:
                                                           Estimate Std. Error
(Intercept)                                                  2.7158     0.1696
politician_genderFemale Politician                          -0.0221     0.2310
inparty_outpartyInparty                                      1.2472     0.2816
politician_genderFemale Politician:inparty_outpartyInparty  -0.1409     0.4057
                                                           t value Pr(>|t|)    
(Intercept)                                                 16.018  < 2e-16 ***
politician_genderFemale Politician                          -0.096    0.924    
inparty_outpartyInparty                                      4.428 1.33e-05 ***
politician_genderFemale Politician:inparty_outpartyInparty  -0.347    0.729    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.653 on 301 degrees of freedom
Multiple R-squared:  0.1032,    Adjusted R-squared:  0.09424 
F-statistic: 11.54 on 3 and 301 DF,  p-value: 3.495e-07
plot_model(courts_h2b, terms = c("inparty_outparty", "politician_gender"),
           type= "pred")

For democratic candidates, female politician effect for BOTH out and inparty voters. For outparty voters, more significant?

For republican candidates, female politician effect also holds for both out and inparty voters.

Comparing the effects of party - 3 types

#Just inparty/outparty

courts_party1 <- lm(support_election ~ politician_gender + inparty_outparty, data = courtpacking_data)

summary(courts_party1)

Call:
lm(formula = support_election ~ politician_gender + inparty_outparty, 
    data = courtpacking_data)

Residuals:
    Min      1Q  Median      3Q     Max 
-3.6427 -1.6063 -0.3675  1.3573  4.3937 

Coefficients:
                                   Estimate Std. Error t value Pr(>|t|)    
(Intercept)                          2.6063     0.1082  24.086   <2e-16 ***
politician_genderFemale Politician   0.2752     0.1352   2.035   0.0423 *  
inparty_outpartyInparty              1.7611     0.1418  12.416   <2e-16 ***
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.678 on 613 degrees of freedom
Multiple R-squared:  0.2053,    Adjusted R-squared:  0.2027 
F-statistic: 79.17 on 2 and 613 DF,  p-value: < 2.2e-16
#Just survey_party


courts_party2 <- lm(support_election ~ politician_gender + survey_partyid, data = courtpacking_data)

summary(courts_party2)

Call:
lm(formula = support_election ~ politician_gender + survey_partyid, 
    data = courtpacking_data)

Residuals:
    Min      1Q  Median      3Q     Max 
-2.7763 -1.6731 -0.1571  1.5333  4.0777 

Coefficients:
                                   Estimate Std. Error t value Pr(>|t|)    
(Intercept)                         2.81910    0.19048  14.800   <2e-16 ***
politician_genderFemale Politician  0.23475    0.15138   1.551   0.1215    
survey_partyid                      0.10321    0.04051   2.548   0.0111 *  
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.867 on 613 degrees of freedom
Multiple R-squared:  0.01584,   Adjusted R-squared:  0.01262 
F-statistic: 4.932 on 2 and 613 DF,  p-value: 0.007502
#both

courts_party3 <- lm(support_election ~ politician_gender + inparty_outparty * survey_partyid, data = courtpacking_data)

summary(courts_party3)

Call:
lm(formula = support_election ~ politician_gender + inparty_outparty * 
    survey_partyid, data = courtpacking_data)

Residuals:
    Min      1Q  Median      3Q     Max 
-4.2781 -1.4804 -0.0467  1.1848  4.4756 

Coefficients:
                                       Estimate Std. Error t value Pr(>|t|)    
(Intercept)                             2.78812    0.21453  12.996  < 2e-16 ***
politician_genderFemale Politician      0.26495    0.13426   1.973 0.048896 *  
inparty_outpartyInparty                 0.60489    0.32926   1.837 0.066676 .  
survey_partyid                         -0.04396    0.04815  -0.913 0.361647    
inparty_outpartyInparty:survey_partyid  0.27541    0.07203   3.824 0.000145 ***
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.655 on 611 degrees of freedom
Multiple R-squared:  0.2297,    Adjusted R-squared:  0.2247 
F-statistic: 45.56 on 4 and 611 DF,  p-value: < 2.2e-16
vif_courts <- vif(courts_party3, type = "predictor")
GVIFs computed for predictors
print(vif_courts)
                      GVIF Df GVIF^(1/(2*Df))   Interacts With
politician_gender 1.013591  1        1.006772             --  
inparty_outparty  1.013591  3        1.002252   survey_partyid
survey_partyid    1.013591  3        1.002252 inparty_outparty
                                  Other Predictors
politician_gender inparty_outparty, survey_partyid
inparty_outparty                 politician_gender
survey_partyid                   politician_gender
#interpreting this?

Hypothesis 3: These above effects will be more pronounced among female voters

#simple model

courts_h3 <- lm(support_election ~ politician_gender * respondent_gender, data = courtpacking_data)

summary(courts_h3)

Call:
lm(formula = support_election ~ politician_gender * respondent_gender, 
    data = courtpacking_data)

Residuals:
    Min      1Q  Median      3Q     Max 
-2.5256 -1.5256 -0.1242  1.5321  3.8758 

Coefficients:
                                                                      Estimate
(Intercept)                                                             3.3179
politician_genderFemale Politician                                      0.2078
respondent_genderFemale Respondent                                     -0.1937
politician_genderFemale Politician:respondent_genderFemale Respondent   0.1360
                                                                      Std. Error
(Intercept)                                                               0.1528
politician_genderFemale Politician                                        0.2143
respondent_genderFemale Respondent                                        0.2154
politician_genderFemale Politician:respondent_genderFemale Respondent     0.3026
                                                                      t value
(Intercept)                                                            21.716
politician_genderFemale Politician                                      0.969
respondent_genderFemale Respondent                                     -0.899
politician_genderFemale Politician:respondent_genderFemale Respondent   0.449
                                                                      Pr(>|t|)
(Intercept)                                                             <2e-16
politician_genderFemale Politician                                       0.333
respondent_genderFemale Respondent                                       0.369
politician_genderFemale Politician:respondent_genderFemale Respondent    0.653
                                                                         
(Intercept)                                                           ***
politician_genderFemale Politician                                       
respondent_genderFemale Respondent                                       
politician_genderFemale Politician:respondent_genderFemale Respondent    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.877 on 612 degrees of freedom
Multiple R-squared:  0.006848,  Adjusted R-squared:  0.00198 
F-statistic: 1.407 on 3 and 612 DF,  p-value: 0.2398
plot_model(courts_h3, terms = c("respondent_gender", "politician_gender"),
           type= "pred")

#include covariates


courts_h3_covariates <- lm(support_election ~ politician_gender * respondent_gender + politician_party + survey_partyid, data = courtpacking_data)

summary(courts_h3_covariates)

Call:
lm(formula = support_election ~ politician_gender * respondent_gender + 
    politician_party + survey_partyid, data = courtpacking_data)

Residuals:
    Min      1Q  Median      3Q     Max 
-3.0388 -1.6400 -0.0196  1.3079  4.4755 

Coefficients:
                                                                      Estimate
(Intercept)                                                            3.12303
politician_genderFemale Politician                                     0.21452
respondent_genderFemale Respondent                                    -0.14841
politician_partyRepublican                                            -0.56570
survey_partyid                                                         0.11556
politician_genderFemale Politician:respondent_genderFemale Respondent  0.04069
                                                                      Std. Error
(Intercept)                                                              0.21885
politician_genderFemale Politician                                       0.21303
respondent_genderFemale Respondent                                       0.21349
politician_partyRepublican                                               0.15040
survey_partyid                                                           0.04027
politician_genderFemale Politician:respondent_genderFemale Respondent    0.30026
                                                                      t value
(Intercept)                                                            14.270
politician_genderFemale Politician                                      1.007
respondent_genderFemale Respondent                                     -0.695
politician_partyRepublican                                             -3.761
survey_partyid                                                          2.870
politician_genderFemale Politician:respondent_genderFemale Respondent   0.136
                                                                      Pr(>|t|)
(Intercept)                                                            < 2e-16
politician_genderFemale Politician                                    0.314330
respondent_genderFemale Respondent                                    0.487230
politician_partyRepublican                                            0.000185
survey_partyid                                                        0.004248
politician_genderFemale Politician:respondent_genderFemale Respondent 0.892249
                                                                         
(Intercept)                                                           ***
politician_genderFemale Politician                                       
respondent_genderFemale Respondent                                       
politician_partyRepublican                                            ***
survey_partyid                                                        ** 
politician_genderFemale Politician:respondent_genderFemale Respondent    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.849 on 610 degrees of freedom
Multiple R-squared:  0.04002,   Adjusted R-squared:  0.03215 
F-statistic: 5.086 on 5 and 610 DF,  p-value: 0.000141
plot_model(courts_h3_covariates, terms = c("respondent_gender", "politician_gender"),
           type= "pred")

perhaps a slightly larger effect among female respondents, but not statistically significant

women more likely to rate politicians lower on average - wonder if they are more likely to recognize antidemocratic behavior?

Filter by Candidate Gender

male_courtpacking_data <- courtpacking_data |> 
  filter(politician_gender == "Male Politician")

lm_male_courtpacking <- lm(support_election ~ politician_party * respondent_gender, data = male_courtpacking_data)

summary(lm_male_courtpacking)

Call:
lm(formula = support_election ~ politician_party * respondent_gender, 
    data = male_courtpacking_data)

Residuals:
    Min      1Q  Median      3Q     Max 
-2.3409 -2.0814 -0.1791  1.6591  3.9186 

Coefficients:
                                                              Estimate
(Intercept)                                                    3.34091
politician_partyRepublican                                    -0.05519
respondent_genderFemale Respondent                            -0.16180
politician_partyRepublican:respondent_genderFemale Respondent -0.04251
                                                              Std. Error
(Intercept)                                                      0.20046
politician_partyRepublican                                       0.31035
respondent_genderFemale Respondent                               0.30491
politician_partyRepublican:respondent_genderFemale Respondent    0.43614
                                                              t value Pr(>|t|)
(Intercept)                                                    16.666   <2e-16
politician_partyRepublican                                     -0.178    0.859
respondent_genderFemale Respondent                             -0.531    0.596
politician_partyRepublican:respondent_genderFemale Respondent  -0.097    0.922
                                                                 
(Intercept)                                                   ***
politician_partyRepublican                                       
respondent_genderFemale Respondent                               
politician_partyRepublican:respondent_genderFemale Respondent    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.881 on 300 degrees of freedom
Multiple R-squared:  0.003122,  Adjusted R-squared:  -0.006847 
F-statistic: 0.3132 on 3 and 300 DF,  p-value: 0.8158
plot_model(lm_male_courtpacking, terms = c("respondent_gender", "politician_party"),
           type= "pred")

female_courtpacking_data <- courtpacking_data |> 
  filter(politician_gender == "Female Politician")

lm_female_courtpacking <- lm(support_election ~ politician_party * respondent_gender, data = female_courtpacking_data)

summary(lm_female_courtpacking)

Call:
lm(formula = support_election ~ politician_party * respondent_gender, 
    data = female_courtpacking_data)

Residuals:
    Min      1Q  Median      3Q     Max 
-3.2535 -1.3784 -0.1268  1.3719  4.0824 

Coefficients:
                                                              Estimate
(Intercept)                                                     4.2535
politician_partyRepublican                                     -1.3359
respondent_genderFemale Respondent                             -0.5006
politician_partyRepublican:respondent_genderFemale Respondent   0.7097
                                                              Std. Error
(Intercept)                                                       0.2151
politician_partyRepublican                                        0.2914
respondent_genderFemale Respondent                                0.2914
politician_partyRepublican:respondent_genderFemale Respondent     0.4121
                                                              t value Pr(>|t|)
(Intercept)                                                    19.777  < 2e-16
politician_partyRepublican                                     -4.585 6.61e-06
respondent_genderFemale Respondent                             -1.718   0.0868
politician_partyRepublican:respondent_genderFemale Respondent   1.722   0.0860
                                                                 
(Intercept)                                                   ***
politician_partyRepublican                                    ***
respondent_genderFemale Respondent                            .  
politician_partyRepublican:respondent_genderFemale Respondent .  
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.812 on 308 degrees of freedom
Multiple R-squared:  0.07707,   Adjusted R-squared:  0.06808 
F-statistic: 8.573 on 3 and 308 DF,  p-value: 1.749e-05
plot_model(lm_female_courtpacking, terms = c("respondent_gender", "politician_party"),
           type= "pred")

#standardize so can compare side by side?

Filtering by respondent party: Democrats

dem_courtpacking_data <- courtpacking_data |> 
  filter(survey_partyid == c(5,6,7))
Warning: There was 1 warning in `filter()`.
ℹ In argument: `survey_partyid == c(5, 6, 7)`.
Caused by warning in `survey_partyid == c(5, 6, 7)`:
! longer object length is not a multiple of shorter object length
lm_dem_courtpacking <- lm(support_election ~ politician_gender * politician_party, data = dem_courtpacking_data)

summary(lm_dem_courtpacking)

Call:
lm(formula = support_election ~ politician_gender * politician_party, 
    data = dem_courtpacking_data)

Residuals:
   Min     1Q Median     3Q    Max 
-3.158 -0.931  0.000  1.000  3.429 

Coefficients:
                                                              Estimate
(Intercept)                                                     4.1579
politician_genderFemale Politician                              0.8421
politician_partyRepublican                                     -1.5865
politician_genderFemale Politician:politician_partyRepublican  -1.4825
                                                              Std. Error
(Intercept)                                                       0.3240
politician_genderFemale Politician                                0.4645
politician_partyRepublican                                        0.4471
politician_genderFemale Politician:politician_partyRepublican     0.6160
                                                              t value Pr(>|t|)
(Intercept)                                                    12.834  < 2e-16
politician_genderFemale Politician                              1.813 0.073460
politician_partyRepublican                                     -3.548 0.000642
politician_genderFemale Politician:politician_partyRepublican  -2.407 0.018326
                                                                 
(Intercept)                                                   ***
politician_genderFemale Politician                            .  
politician_partyRepublican                                    ***
politician_genderFemale Politician:politician_partyRepublican *  
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.412 on 83 degrees of freedom
Multiple R-squared:  0.4413,    Adjusted R-squared:  0.4211 
F-statistic: 21.85 on 3 and 83 DF,  p-value: 1.593e-10
plot_model(lm_dem_courtpacking, terms = c("politician_party", "politician_gender"),
           type= "pred")

#with covariates


lm_dem_courtpacking2 <- lm(support_election ~ politician_gender * politician_party + respondent_gender, data = dem_courtpacking_data)

summary(lm_dem_courtpacking2)

Call:
lm(formula = support_election ~ politician_gender * politician_party + 
    respondent_gender, data = dem_courtpacking_data)

Residuals:
    Min      1Q  Median      3Q     Max 
-3.1580 -0.9310 -0.0001  1.0001  3.4285 

Coefficients:
                                                               Estimate
(Intercept)                                                    4.157841
politician_genderFemale Politician                             0.842064
politician_partyRepublican                                    -1.586518
respondent_genderFemale Respondent                             0.000171
politician_genderFemale Politician:politician_partyRepublican -1.482470
                                                              Std. Error
(Intercept)                                                     0.341262
politician_genderFemale Politician                              0.473585
politician_partyRepublican                                      0.460209
respondent_genderFemale Respondent                              0.320037
politician_genderFemale Politician:politician_partyRepublican   0.622143
                                                              t value Pr(>|t|)
(Intercept)                                                    12.184  < 2e-16
politician_genderFemale Politician                              1.778 0.079100
politician_partyRepublican                                     -3.447 0.000896
respondent_genderFemale Respondent                              0.001 0.999575
politician_genderFemale Politician:politician_partyRepublican  -2.383 0.019492
                                                                 
(Intercept)                                                   ***
politician_genderFemale Politician                            .  
politician_partyRepublican                                    ***
respondent_genderFemale Respondent                               
politician_genderFemale Politician:politician_partyRepublican *  
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.421 on 82 degrees of freedom
Multiple R-squared:  0.4413,    Adjusted R-squared:  0.414 
F-statistic: 16.19 on 4 and 82 DF,  p-value: 8.23e-10
plot_model(lm_dem_courtpacking2, terms = c("politician_party", "politician_gender"),
           type= "pred")

#only issue need to think about is that for some respondents, survey party id and prolific party id are different

Filtering by respondent party: Republicans

rep_courtpacking_data <- courtpacking_data |> 
  filter(survey_partyid == c(1,2,3))
Warning: There was 1 warning in `filter()`.
ℹ In argument: `survey_partyid == c(1, 2, 3)`.
Caused by warning in `survey_partyid == c(1, 2, 3)`:
! longer object length is not a multiple of shorter object length
lm_rep_courtpacking <- lm(support_election ~ politician_gender * politician_party, data = rep_courtpacking_data)

summary(lm_rep_courtpacking)

Call:
lm(formula = support_election ~ politician_gender * politician_party, 
    data = rep_courtpacking_data)

Residuals:
    Min      1Q  Median      3Q     Max 
-3.0667 -1.3529 -0.3333  0.9333  3.6471 

Coefficients:
                                                              Estimate
(Intercept)                                                     2.5769
politician_genderFemale Politician                             -0.2240
politician_partyRepublican                                      0.7564
politician_genderFemale Politician:politician_partyRepublican   0.9573
                                                              Std. Error
(Intercept)                                                       0.3207
politician_genderFemale Politician                                0.5100
politician_partyRepublican                                        0.5302
politician_genderFemale Politician:politician_partyRepublican     0.7853
                                                              t value Pr(>|t|)
(Intercept)                                                     8.036 1.72e-11
politician_genderFemale Politician                             -0.439    0.662
politician_partyRepublican                                      1.427    0.158
politician_genderFemale Politician:politician_partyRepublican   1.219    0.227
                                                                 
(Intercept)                                                   ***
politician_genderFemale Politician                               
politician_partyRepublican                                       
politician_genderFemale Politician:politician_partyRepublican    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.635 on 69 degrees of freedom
Multiple R-squared:  0.1418,    Adjusted R-squared:  0.1045 
F-statistic: 3.801 on 3 and 69 DF,  p-value: 0.01391
plot_model(lm_rep_courtpacking, terms = c("politician_party", "politician_gender"),
           type= "pred")

#include covariates


lm_rep_courtpacking2 <- lm(support_election ~ politician_gender * politician_party + respondent_gender, data = rep_courtpacking_data)

summary(lm_rep_courtpacking2)

Call:
lm(formula = support_election ~ politician_gender * politician_party + 
    respondent_gender, data = rep_courtpacking_data)

Residuals:
    Min      1Q  Median      3Q     Max 
-2.8891 -1.3428 -0.2696  0.8442  3.4680 

Coefficients:
                                                              Estimate
(Intercept)                                                     2.3428
politician_genderFemale Politician                             -0.1913
politician_partyRepublican                                      0.8130
respondent_genderFemale Respondent                              0.3804
politician_genderFemale Politician:politician_partyRepublican   0.9246
                                                              Std. Error
(Intercept)                                                       0.3995
politician_genderFemale Politician                                0.5112
politician_partyRepublican                                        0.5334
respondent_genderFemale Respondent                                0.3871
politician_genderFemale Politician:politician_partyRepublican     0.7862
                                                              t value Pr(>|t|)
(Intercept)                                                     5.864 1.47e-07
politician_genderFemale Politician                             -0.374    0.709
politician_partyRepublican                                      1.524    0.132
respondent_genderFemale Respondent                              0.983    0.329
politician_genderFemale Politician:politician_partyRepublican   1.176    0.244
                                                                 
(Intercept)                                                   ***
politician_genderFemale Politician                               
politician_partyRepublican                                       
respondent_genderFemale Respondent                               
politician_genderFemale Politician:politician_partyRepublican    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.636 on 68 degrees of freedom
Multiple R-squared:  0.1538,    Adjusted R-squared:  0.1041 
F-statistic: 3.091 on 4 and 68 DF,  p-value: 0.02127
plot_model(lm_rep_courtpacking2, terms = c("politician_party", "politician_gender"),
           type= "pred")

#only issue need to think about is that for some respondents, survey party id and prolific party id are different