IS Obesity Pilot (N = 150)

Author

Marcus

Published

August 6, 2024

Setup

Libraries and functions

Code
knitr::opts_chunk$set(warning = FALSE, message = FALSE) 

Mypackages <-
  c("lme4","tidyverse","effects","ggplot2","psych",
    "MASS","Rmisc","lmerTest","ggthemes", "knitr",
    "lsmeans","pastecs","sjstats","car","ordinal",
    "Rcpp","corrplot", "ggpubr", "EnvStats",
    "easyStats", "cowplot","see","datawizard", 
    "ggcorrplot", "lavaan")

# install.packages(Mypackages) #you must remove the # in this comment if you need to install the packages! 
lapply(Mypackages,
       require,
       character.only = TRUE)

options(knitr.kable.NA = '—')
set.seed(1)  

Load Data

Code
# read in data files
setwd("~/Desktop")
gjg_raw <-read.csv("/Users/mtrenfield17/Desktop/Research/Boston College Research/SISC Lab Research/IS Project/Obesity/IS Obesity Pilot 1.csv")

Functions

Code
plot_cooker <- function(data, iv, dv) {
  part1 <- ggplot(data, aes(x = {{iv}}, y = {{dv}}, fill = {{iv}})) +
    geom_violin(alpha = 0.3, scale = "count") + 
  stat_summary(fun = "mean", geom = "point", size = 3, color = "black") +
    stat_summary(fun.data = mean_cl_normal, geom = "errorbar", width = 0.2,
                 #change to make a data set from allEffects with mean, low CI, high CI
                 size = 1.5, color = "black") +
    theme_classic() +
    xlab("") +
    ylab("")
  ggpar(part1, legend = "none")
}
  
pol_line <- function(data, iv, dv) {
  ggplot(data, aes(x = {{iv}}, y = {{dv}}, color = condition)) +
  stat_summary(fun.data = "mean_cl_normal", geom = "line") +
  geom_point(position = position_jitter(width = 0.1, height = 0.1), alpha = 0.5) +
  labs(x = "Political Leaning", color = "Condition")
}

lizy_cooker <- function(dv, iv, Title, x_axis_labs, y_label, sample_size, coln, rown) {
  part1 <- ggviolin(gjg, x = dv, y = iv, color = dv,
                    alpha = 0.1, fill = dv, xlab = "Motive",
                    trim = TRUE, ylab = y_label) +
    stat_summary(fun.data = "mean_cl_normal", geom = "crossbar", fatten = 1) +
    scale_y_continuous(breaks = c(1:7)) +
    labs(title = paste0(Title, " (n = ", sample_size, ")")) +
    theme(panel.background = element_rect(fill = "transparent"), 
          legend.position = "right",  ## Consider “gray97” for fill
          plot.title = element_text(face = "bold", hjust = 0.5, size = 16), 
          plot.subtitle = element_text(hjust = 0.5),
          panel.grid.major.y = element_line(color='grey75'), 
          axis.text.x = element_text(face = "plain", size = 13, color = "black"),
          axis.text.y = element_text(face = "plain", size = 13, color = "black"),
          axis.title.y = element_text(face = "plain", size = 13, color = "black", 
                                       margin = margin(t = 0, r = 10, b = 0, l = 0)), ## lower X axis title
          panel.border = element_rect(color = "black", fill = NA, size = 1)) +
  scale_color_discrete(name = "Condition") +
  facet_wrap(~ vignette, ncol = coln, nrow = rown, scales = "free", as.table = TRUE)
  ggpar(part1, legend = "none")
}

#POL_gjg_long <- filter(gjg_long, political_overall %in% c("Democrat", "Republican"))
  
#gjg_long$political_overall
#ggplot(gjg_long, aes(x = condition, y = p_approve, color = condition)) +
  #geom_point(stat="summary", fun="mean", size = 2) +
  #facet_wrap(~political_overall) +
  #scale_x_discrete(labels = NULL)

Reshaping data

Code
#### filtering people who failed the attn check ####
gjg <- gjg_raw %>% filter(attentionCheck == 3)

## changing condition to factor and reordering ##
gjg$condition <- as.factor(gjg$condition)
gjg$condition <- factor(gjg$condition, levels = c("individualScope", "populationScope", "mergedScope"))

# changing numeric DVs to numeric
gjg <- gjg %>% mutate_at(vars(policyDV, donation, helpDV_1:efficacy_3, age, pol, pid, edu, inc, weight, charityRealYN, Duration..in.seconds.), as.numeric)

## renaming matrix variables
names(gjg)[names(gjg) == 'helpDV_1'] <-'usGovHelp'
names(gjg)[names(gjg) == 'helpDV_2'] <-'manufacturerHelp'
names(gjg)[names(gjg) == 'helpDV_3'] <-'individualHelp'
names(gjg)[names(gjg) == 'helpDV_4'] <-'youHelp'

names(gjg)[names(gjg) == 'preventDV_1'] <-'usGovPrevent'
names(gjg)[names(gjg) == 'preventDV_2'] <-'manufacturerPrevent'
names(gjg)[names(gjg) == 'preventDV_3'] <-'individualPrevent'
names(gjg)[names(gjg) == 'preventDV_4'] <-'youPrevent'

names(gjg)[names(gjg) == 'feelingsMeasures_1'] <-'upset'
names(gjg)[names(gjg) == 'feelingsMeasures_2'] <-'sympathetic'
names(gjg)[names(gjg) == 'feelingsMeasures_3'] <-'touched'

names(gjg)[names(gjg) == 'moral_1'] <-'donatingMoral'
names(gjg)[names(gjg) == 'moral_2'] <-'eatingMoral'
names(gjg)[names(gjg) == 'moral_3'] <-'adMoral'
names(gjg)[names(gjg) == 'moral_4'] <-'sugarMoral'

names(gjg)[names(gjg) == 'blame_1'] <-'manufacturerBlame'
names(gjg)[names(gjg) == 'blame_2'] <-'individualBlame'

names(gjg)[names(gjg) == 'efficacy_1'] <-'studyDonationEfficacy'
names(gjg)[names(gjg) == 'efficacy_2'] <-'studyPolicyEfficacy'
names(gjg)[names(gjg) == 'efficacy_3'] <-'donationEfficacy'

Data Quality Checks

Attention Check

  • 3 people failed the attention check
Code
gjg_raw <- gjg_raw %>% filter(consent == 8)

gjg_raw %>%
  group_by(attentionCheck) %>%
  dplyr::summarise(n = n()) %>%
  mutate(freq = n / sum(n))

Charity Belief (Return and double check this)

  • People are less doubtful of the individual charity in the individual frame than combined frame (neither different from structural)
Code
ggplot(gjg, aes(x = condition, y = charityRealYN)) +
  geom_violin() +
  geom_boxplot(width=0.1, fill="white") +
  theme_minimal() +
  labs(y = "Not at all to Extremely", x = "Condition", title = "Extent Participants Doubted the Charity was real")

Code
# Check for duplicate column names
anyDuplicated(names(gjg))
[1] 0
Code
names(gjg)
 [1] "StartDate"             "EndDate"               "Status"               
 [4] "IPAddress"             "Progress"              "Duration..in.seconds."
 [7] "Finished"              "RecordedDate"          "ResponseId"           
[10] "RecipientLastName"     "RecipientFirstName"    "RecipientEmail"       
[13] "ExternalReference"     "LocationLatitude"      "LocationLongitude"    
[16] "DistributionChannel"   "UserLanguage"          "prolificID"           
[19] "consent"               "indSum"                "popSum"               
[22] "mixSum"                "policyDV"              "donation"             
[25] "usGovHelp"             "manufacturerHelp"      "individualHelp"       
[28] "youHelp"               "usGovPrevent"          "manufacturerPrevent"  
[31] "individualPrevent"     "youPrevent"            "upset"                
[34] "sympathetic"           "touched"               "donatingMoral"        
[37] "eatingMoral"           "adMoral"               "sugarMoral"           
[40] "manufacturerBlame"     "individualBlame"       "studyDonationEfficacy"
[43] "studyPolicyEfficacy"   "donationEfficacy"      "attentionCheck"       
[46] "weight"                "weight_TEXT"           "inc"                  
[49] "inc_TEXT"              "edu"                   "edu_TEXT"             
[52] "age"                   "gen"                   "gen_3_TEXT"           
[55] "gen_TEXT"              "pol"                   "pol_TEXT"             
[58] "pid"                   "pid_TEXT"              "area"                 
[61] "area_TEXT"             "race"                  "race_TEXT"            
[64] "openFeedback"          "confusion"             "purpose"              
[67] "strange"               "charityRealYN"         "PROLIFIC_PID"         
[70] "STUDY_ID"              "SESSION_ID"            "condition"            
Code
gjg$condition <- relevel(gjg$condition, ref = "mergedScope")
gjg_I <- gjg
gjg_I$condition <- relevel(gjg_I$condition, ref = "individualScope")

mod_belief <- lm(charityRealYN ~ condition, data = gjg)
summary(mod_belief)

Call:
lm(formula = charityRealYN ~ condition, data = gjg)

Residuals:
    Min      1Q  Median      3Q     Max 
-2.1633 -1.0295  0.1042  0.8367  2.4400 

Coefficients:
                         Estimate Std. Error t value Pr(>|t|)    
(Intercept)                3.1633     0.1811  17.464   <2e-16 ***
conditionindividualScope  -0.6033     0.2549  -2.367   0.0193 *  
conditionpopulationScope  -0.2674     0.2575  -1.039   0.3007    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.268 on 144 degrees of freedom
Multiple R-squared:  0.03763,   Adjusted R-squared:  0.02426 
F-statistic: 2.815 on 2 and 144 DF,  p-value: 0.0632
Code
mod_belief_I <- lm(charityRealYN ~ condition, data = gjg_I)
summary(mod_belief_I)

Call:
lm(formula = charityRealYN ~ condition, data = gjg_I)

Residuals:
    Min      1Q  Median      3Q     Max 
-2.1633 -1.0295  0.1042  0.8367  2.4400 

Coefficients:
                         Estimate Std. Error t value Pr(>|t|)    
(Intercept)                2.5600     0.1793  14.277   <2e-16 ***
conditionmergedScope       0.6033     0.2549   2.367   0.0193 *  
conditionpopulationScope   0.3358     0.2562   1.311   0.1920    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.268 on 144 degrees of freedom
Multiple R-squared:  0.03763,   Adjusted R-squared:  0.02426 
F-statistic: 2.815 on 2 and 144 DF,  p-value: 0.0632

Demographics

Code
# Subset your data frame to include only the demographic columns
demo_gjg <- gjg[, c("weight_TEXT", "gen_TEXT", "race_TEXT", "inc_TEXT", "edu_TEXT", "pol_TEXT", "pid_TEXT", "area_TEXT")]

# Age
mean(gjg$age, na.rm=TRUE)
[1] 37.33333
Code
sd(gjg$age, na.rm=TRUE)
[1] 13.15416
Code
# Loop through each demographic column and calculate frequency counts
freq_tables <- list()

for (col in names(demo_gjg)) {
  {
    freq_table <- as.data.frame(table(demo_gjg[[col]]))
    freq_table$Percent <- round(freq_table$Freq / sum(freq_table$Freq) * 100, 2)
    freq_tables[[col]] <- freq_table
  }
}

# Print the frequency tables
for (i in seq_along(freq_tables)) {
  if (!is.null(freq_tables[[i]])) {
    cat("\nTable of frequencies for", names(freq_tables)[i], ":\n")
    print(freq_tables[[i]])
  }
}

Table of frequencies for weight_TEXT :
           Var1 Freq Percent
1 Normal Weight   91   61.90
2         Obese   13    8.84
3    Overweight   39   26.53
4   Underweight    4    2.72

Table of frequencies for gen_TEXT :
            Var1 Freq Percent
1 I identify as:    2    1.36
2            Man   72   48.98
3          Woman   73   49.66

Table of frequencies for race_TEXT :
                                                                     Var1 Freq
1  American Indian and Native Alaskan,Pacific Islander or Native Hawaiian    1
2                                American Indian and Native Alaskan,White    1
3                                                                   Black   31
4                                                        Black,East Asian    1
5                                                             Black,White    3
6                                                              East Asian    4
7                                                  Hispanic or Latino/a/x    9
8                                            Hispanic or Latino/a/x,White    3
9                                  Middle Eastern and North African,White    1
10                                                            South Asian    2
11                                                        Southeast Asian    1
12                                                  Southeast Asian,White    1
13                                                                  White   89
   Percent
1     0.68
2     0.68
3    21.09
4     0.68
5     2.04
6     2.72
7     6.12
8     2.04
9     0.68
10    1.36
11    0.68
12    0.68
13   60.54

Table of frequencies for inc_TEXT :
                 Var1 Freq Percent
1                        1    0.68
2 $100,000 - $149,999   27   18.37
3 $150,000 - $199,999    7    4.76
4   $25,000 - $49,999   31   21.09
5   $50,000 - $74,999   33   22.45
6   $75,000 - $99,999   20   13.61
7   less than $25,000   23   15.65
8  more than $200,000    5    3.40

Table of frequencies for edu_TEXT :
                                                  Var1 Freq Percent
1                                    Bachelor's degree   53   36.05
2                  Graduate degree (Masters, PhD, etc)   37   25.17
3                           High school diploma or GED   17   11.56
4 Some college, Technical degree, or Associates degree   40   27.21

Table of frequencies for pol_TEXT :
                   Var1 Freq Percent
1                          1    0.68
2          Conservative   14    9.52
3               Liberal   40   27.21
4              Moderate   32   21.77
5 Somewhat Conservative   16   10.88
6      Somewhat Liberal   25   17.01
7     Very Conservative    1    0.68
8          Very Liberal   18   12.24

Table of frequencies for pid_TEXT :
                 Var1 Freq Percent
1                        1    0.68
2            Democrat   71   48.30
3 Independent / Other   47   31.97
4          Republican   28   19.05

Table of frequencies for area_TEXT :
      Var1 Freq Percent
1    Rural   23   15.65
2 Suburban   76   51.70
3    Urban   48   32.65

Correlations

Code
DVs <- gjg[c("policyDV", "donation", "usGovHelp", "manufacturerHelp", "individualHelp", "youHelp", "usGovPrevent", "manufacturerPrevent", "individualPrevent", "youPrevent", "upset", "sympathetic", "touched", "donatingMoral", "eatingMoral", "adMoral", "sugarMoral", "individualBlame", "manufacturerBlame", "studyDonationEfficacy", "studyPolicyEfficacy", "donationEfficacy", "pol", "edu", "inc", "age", "weight")]

# Compute pairwise correlations
corr_DVs <- cor(DVs, use = "complete.obs")

# Plot the correlation matrix
corrplot(corr_DVs, is.corr = TRUE, type = "lower", lower = "circle", tl.cex = 0.7, insig = "label_sig", diag = TRUE)

EFA

Evaluating the correlation matrix

Determining number of factors

  • Scree plot suggests 3-5

  • eigenvalue method suggests 3

  • Parallel Analysis suggests 5

3 Factors

Code
fit <- factanal(na.omit(efaDVs), factors=3, rotation="promax", scores = "regression")
print(fit, digits = 2, cutoff = .3, sort = TRUE)

Call:
factanal(x = na.omit(efaDVs), factors = 3, scores = "regression",     rotation = "promax")

Uniquenesses:
             policyDV              donation             usGovHelp 
                 0.90                  0.66                  0.51 
     manufacturerHelp        individualHelp               youHelp 
                 0.41                  0.34                  0.46 
         usGovPrevent   manufacturerPrevent     individualPrevent 
                 0.52                  0.38                  0.43 
           youPrevent                 upset           sympathetic 
                 0.56                  0.89                  0.58 
              touched         donatingMoral           eatingMoral 
                 0.55                  0.75                  0.95 
              adMoral            sugarMoral       individualBlame 
                 0.83                  0.82                  0.65 
    manufacturerBlame studyDonationEfficacy   studyPolicyEfficacy 
                 0.66                  0.54                  0.76 
     donationEfficacy 
                 0.47 

Loadings:
                      Factor1 Factor2 Factor3
usGovHelp              0.66                  
manufacturerHelp       0.77                  
usGovPrevent           0.65                  
manufacturerPrevent    0.81                  
manufacturerBlame      0.61                  
donation                       0.64          
sympathetic                    0.56          
touched                        0.61          
donatingMoral                  0.51          
studyDonationEfficacy          0.69          
donationEfficacy               0.76          
individualHelp                         0.83  
youHelp                        0.41    0.53  
individualPrevent                      0.77  
youPrevent                             0.55  
individualBlame                        0.59  
policyDV                                     
upset                                        
eatingMoral                                  
adMoral                0.35                  
sugarMoral             0.40                  
studyPolicyEfficacy            0.37          

               Factor1 Factor2 Factor3
SS loadings       3.14    2.96    2.38
Proportion Var    0.14    0.13    0.11
Cumulative Var    0.14    0.28    0.39

Factor Correlations:
        Factor1 Factor2 Factor3
Factor1   1.000   0.085   -0.33
Factor2   0.085   1.000   -0.27
Factor3  -0.333  -0.270    1.00

Test of the hypothesis that 3 factors are sufficient.
The chi square statistic is 476.93 on 168 degrees of freedom.
The p-value is 2.24e-31 
Code
loads <- fit$loadings
fa.diagram(loads)

Code
# ## Cronbach's Alpha
# f1 <- efaDVs[ , c("futureSacrifice", "futureImpact", "futureResponsibility", "moralMitigate", 
#                   "moralCollective", "intergenerational1", "opportunityChoiceNum", "donation", "moralProtect", "dayToDayEfficacy")]
# f2 <- efaDVs[ , c("effortEfficacy", "americansEfficacy1", "americansEfficacy2", "optimism")]
# f3 <- efaDVs[ , c("thankfulPG", "sacrificesPG", "gratitudePG")]
# f4 <- efaDVs[ , c("intergenerational1", "intergenerational2", "american1", "american2")]
# f5 <- efaDVs[ , c("hope", "optimism")]
# alpha(f1)
# alpha(f2)
# alpha(f3)
# alpha(f4)
# alpha(f5)

5 Factors

Code
fit <- factanal(na.omit(efaDVs), factors=5, rotation="promax", scores = "regression")
print(fit, digits = 2, cutoff = .3, sort = TRUE)

Call:
factanal(x = na.omit(efaDVs), factors = 5, scores = "regression",     rotation = "promax")

Uniquenesses:
             policyDV              donation             usGovHelp 
                 0.80                  0.64                  0.38 
     manufacturerHelp        individualHelp               youHelp 
                 0.42                  0.33                  0.41 
         usGovPrevent   manufacturerPrevent     individualPrevent 
                 0.41                  0.44                  0.45 
           youPrevent                 upset           sympathetic 
                 0.55                  0.70                  0.43 
              touched         donatingMoral           eatingMoral 
                 0.19                  0.73                  0.75 
              adMoral            sugarMoral       individualBlame 
                 0.26                  0.55                  0.65 
    manufacturerBlame studyDonationEfficacy   studyPolicyEfficacy 
                 0.64                  0.52                  0.63 
     donationEfficacy 
                 0.36 

Loadings:
                      Factor1 Factor2 Factor3 Factor4 Factor5
usGovHelp              0.81                                  
manufacturerHelp       0.74                                  
usGovPrevent           0.78                                  
manufacturerPrevent    0.70                                  
individualHelp                 0.84                          
youHelp                        0.61    0.39                  
individualPrevent              0.74                          
youPrevent                     0.58                          
individualBlame                0.54                          
donation                               0.51                  
studyDonationEfficacy                  0.64                  
donationEfficacy                       0.79                  
adMoral                                        0.88          
sugarMoral                                     0.64          
upset                                                  0.50  
sympathetic                                            0.58  
touched                                                0.80  
policyDV                                       0.31          
donatingMoral                          0.44                  
eatingMoral           -0.35                    0.47          
manufacturerBlame      0.39                    0.32          
studyPolicyEfficacy                    0.46                  

               Factor1 Factor2 Factor3 Factor4 Factor5
SS loadings       2.77    2.33    2.20    1.85    1.38
Proportion Var    0.13    0.11    0.10    0.08    0.06
Cumulative Var    0.13    0.23    0.33    0.42    0.48

Factor Correlations:
        Factor1 Factor2 Factor3 Factor4 Factor5
Factor1    1.00   0.177  -0.170    0.13   -0.33
Factor2    0.18   1.000  -0.025    0.41   -0.25
Factor3   -0.17  -0.025   1.000   -0.20    0.26
Factor4    0.13   0.412  -0.196    1.00   -0.14
Factor5   -0.33  -0.251   0.261   -0.14    1.00

Test of the hypothesis that 5 factors are sufficient.
The chi square statistic is 291.27 on 131 degrees of freedom.
The p-value is 3.33e-14 
Code
loads <- fit$loadings
fa.diagram(loads)

Code
# ## Cronbach's Alpha
# f1 <- efaDVs[ , c("futureSacrifice", "futureImpact", "futureResponsibility", "moralMitigate", 
#                   "moralCollective", "intergenerational1", "opportunityChoiceNum", "donation", "moralProtect", "dayToDayEfficacy")]
# f2 <- efaDVs[ , c("effortEfficacy", "americansEfficacy1", "americansEfficacy2", "optimism")]
# f3 <- efaDVs[ , c("thankfulPG", "sacrificesPG", "gratitudePG")]
# f4 <- efaDVs[ , c("intergenerational1", "intergenerational2", "american1", "american2")]
# f5 <- efaDVs[ , c("hope", "optimism")]
# alpha(f1)
# alpha(f2)
# alpha(f3)
# alpha(f4)
# alpha(f5)

CFA

  • Bad fit
Code
model <- '
  responsibilityHelp =~ usGovHelp + manufacturerHelp + individualHelp + youHelp

  responsibilityPrevent =~ usGovPrevent + manufacturerPrevent + individualPrevent + youPrevent

  affect =~ upset + sympathetic + touched

  moralIssue =~ donatingMoral + eatingMoral + adMoral + sugarMoral
  
  blame =~ manufacturerBlame + individualBlame
  
  efficacy =~ studyDonationEfficacy + studyPolicyEfficacy + donationEfficacy
  
'

fit <- cfa(model, data = factorDVs)
summary(fit, fit.measures=TRUE)
lavaan 0.6.15 ended normally after 106 iterations

  Estimator                                         ML
  Optimization method                           NLMINB
  Number of model parameters                        55

  Number of observations                           147

Model Test User Model:
                                                      
  Test statistic                               619.662
  Degrees of freedom                               155
  P-value (Chi-square)                           0.000

Model Test Baseline Model:

  Test statistic                              1265.118
  Degrees of freedom                               190
  P-value                                        0.000

User Model versus Baseline Model:

  Comparative Fit Index (CFI)                    0.568
  Tucker-Lewis Index (TLI)                       0.470

Loglikelihood and Information Criteria:

  Loglikelihood user model (H0)              -4472.816
  Loglikelihood unrestricted model (H1)      -4162.985
                                                      
  Akaike (AIC)                                9055.632
  Bayesian (BIC)                              9220.106
  Sample-size adjusted Bayesian (SABIC)       9046.056

Root Mean Square Error of Approximation:

  RMSEA                                          0.143
  90 Percent confidence interval - lower         0.131
  90 Percent confidence interval - upper         0.155
  P-value H_0: RMSEA <= 0.050                    0.000
  P-value H_0: RMSEA >= 0.080                    1.000

Standardized Root Mean Square Residual:

  SRMR                                           0.135

Parameter Estimates:

  Standard errors                             Standard
  Information                                 Expected
  Information saturated (h1) model          Structured

Latent Variables:
                           Estimate  Std.Err  z-value  P(>|z|)
  responsibilityHelp =~                                       
    usGovHelp                 1.000                           
    manufacturrHlp            1.029    0.117    8.757    0.000
    individualHelp            0.184    0.122    1.504    0.133
    youHelp                   0.265    0.136    1.946    0.052
  responsibilityPrevent =~                                    
    usGovPrevent              1.000                           
    manufctrrPrvnt            0.976    0.121    8.097    0.000
    individulPrvnt            0.162    0.125    1.298    0.194
    youPrevent                0.224    0.147    1.523    0.128
  affect =~                                                   
    upset                     1.000                           
    sympathetic               1.707    0.357    4.779    0.000
    touched                   1.837    0.384    4.778    0.000
  moralIssue =~                                               
    donatingMoral             1.000                           
    eatingMoral               1.133    0.397    2.856    0.004
    adMoral                   2.545    0.704    3.614    0.000
    sugarMoral                1.721    0.477    3.607    0.000
  blame =~                                                    
    manufacturrBlm            1.000                           
    individualBlam            0.029    0.177    0.165    0.869
  efficacy =~                                                 
    stdyDntnEffccy            1.000                           
    stdyPlcyEffccy            0.602    0.107    5.644    0.000
    donationEffccy            1.136    0.167    6.813    0.000

Covariances:
                           Estimate  Std.Err  z-value  P(>|z|)
  responsibilityHelp ~~                                       
    rspnsbltyPrvnt            0.610    0.100    6.085    0.000
    affect                    0.196    0.062    3.175    0.001
    moralIssue                0.153    0.065    2.353    0.019
    blame                     0.308    0.078    3.945    0.000
    efficacy                  0.304    0.109    2.797    0.005
  responsibilityPrevent ~~                                    
    affect                    0.149    0.053    2.816    0.005
    moralIssue                0.158    0.064    2.492    0.013
    blame                     0.365    0.077    4.732    0.000
    efficacy                  0.259    0.100    2.590    0.010
  affect ~~                                                   
    moralIssue                0.085    0.041    2.049    0.040
    blame                     0.097    0.048    1.995    0.046
    efficacy                  0.342    0.099    3.467    0.001
  moralIssue ~~                                               
    blame                     0.224    0.077    2.891    0.004
    efficacy                  0.234    0.095    2.462    0.014
  blame ~~                                                    
    efficacy                  0.088    0.099    0.891    0.373

Variances:
                   Estimate  Std.Err  z-value  P(>|z|)
   .usGovHelp         0.483    0.077    6.263    0.000
   .manufacturrHlp    0.520    0.082    6.308    0.000
   .individualHelp    1.220    0.143    8.548    0.000
   .youHelp           1.495    0.175    8.531    0.000
   .usGovPrevent      0.546    0.079    6.923    0.000
   .manufctrrPrvnt    0.445    0.068    6.524    0.000
   .individulPrvnt    1.047    0.122    8.561    0.000
   .youPrevent        1.454    0.170    8.556    0.000
   .upset             1.198    0.147    8.141    0.000
   .sympathetic       0.349    0.094    3.697    0.000
   .touched           0.571    0.120    4.772    0.000
   .donatingMoral     2.414    0.291    8.285    0.000
   .eatingMoral       2.705    0.328    8.240    0.000
   .adMoral           0.798    0.284    2.806    0.005
   .sugarMoral        1.094    0.180    6.064    0.000
   .manufacturrBlm    5.255   28.214    0.186    0.852
   .individualBlam    1.125    0.133    8.431    0.000
   .stdyDntnEffccy    1.143    0.205    5.581    0.000
   .stdyPlcyEffccy    1.039    0.139    7.474    0.000
   .donationEffccy    1.066    0.232    4.587    0.000
    responsbltyHlp    0.653    0.131    4.982    0.000
    rspnsbltyPrvnt    0.516    0.116    4.448    0.000
    affect            0.275    0.110    2.498    0.013
    moralIssue        0.316    0.167    1.899    0.058
    blame            -4.394   28.201   -0.156    0.876
    efficacy          1.272    0.293    4.343    0.000

Behavioral Outcomes

Code
gjg$condition <- factor(gjg$condition, levels = c("individualScope", "populationScope", "mergedScope"))

percep_plot_list <- list(plot_cooker(gjg, condition, donation),
                         plot_cooker(gjg, condition, policyDV))

# Adding titles to each plot
percep_plot_list[[1]] <- percep_plot_list[[1]] +
  ggtitle("Donations")
  
percep_plot_list[[2]] <- percep_plot_list[[2]] +
  ggtitle("Support for Policy")

percep_plot_arranged <- ggarrange(plotlist = percep_plot_list, ncol = 2, nrow = 1)

overall_percep_title <- ggdraw() +
  draw_label("Behavioral DVs", fontface = "bold")

plot_grid(overall_percep_title, percep_plot_arranged, ncol = 1, rel_heights = c(0.1, 0.9))

Code
gjg %>%
  group_by(condition) %>%
  dplyr::summarise(mean(policyDV))
# A tibble: 3 × 2
  condition       `mean(policyDV)`
  <fct>                      <dbl>
1 individualScope             5.46
2 populationScope             5.21
3 mergedScope                 5.76
Code
gjg %>%
  group_by(condition) %>%
  dplyr::summarise(mean(donation))
# A tibble: 3 × 2
  condition       `mean(donation)`
  <fct>                      <dbl>
1 individualScope             3.38
2 populationScope             2.67
3 mergedScope                 2.59

Inferential Stats

Code
gjg$condition <- relevel(gjg$condition, ref = "mergedScope")
gjg_I <- gjg
gjg_I$condition <- relevel(gjg_I$condition, ref = "individualScope")

mod_donation<- lm(donation ~ condition, data = gjg)
summary(mod_donation)

Call:
lm(formula = donation ~ condition, data = gjg)

Residuals:
    Min      1Q  Median      3Q     Max 
-3.3800 -2.5918 -0.6667  2.3333  7.4082 

Coefficients:
                         Estimate Std. Error t value Pr(>|t|)    
(Intercept)               2.59184    0.42763   6.061 1.13e-08 ***
conditionindividualScope  0.78816    0.60172   1.310    0.192    
conditionpopulationScope  0.07483    0.60789   0.123    0.902    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 2.993 on 144 degrees of freedom
Multiple R-squared:  0.01432,   Adjusted R-squared:  0.0006341 
F-statistic: 1.046 on 2 and 144 DF,  p-value: 0.3539
Code
confint(mod_donation)
                              2.5 %   97.5 %
(Intercept)               1.7466035 3.437070
conditionindividualScope -0.4011854 1.977512
conditionpopulationScope -1.1267200 1.276380
Code
mod_donation<- lm(donation ~ condition*pol, data = gjg)
summary(mod_donation)

Call:
lm(formula = donation ~ condition * pol, data = gjg)

Residuals:
   Min     1Q Median     3Q    Max 
-3.635 -2.511 -0.711  2.181  7.470 

Coefficients:
                             Estimate Std. Error t value Pr(>|t|)
(Intercept)                   2.23939    1.37010   1.634    0.104
conditionindividualScope      1.17809    1.94462   0.606    0.546
conditionpopulationScope     -1.45973    2.02837  -0.720    0.473
pol                           0.07256    0.26786   0.271    0.787
conditionindividualScope:pol -0.08057    0.38787  -0.208    0.836
conditionpopulationScope:pol  0.33528    0.40221   0.834    0.406

Residual standard error: 3.007 on 140 degrees of freedom
  (1 observation deleted due to missingness)
Multiple R-squared:  0.02692,   Adjusted R-squared:  -0.007835 
F-statistic: 0.7746 on 5 and 140 DF,  p-value: 0.5696
Code
mod_donationI <- lm(donation ~ condition*pol, data = gjg_I)
summary(mod_donationI)

Call:
lm(formula = donation ~ condition * pol, data = gjg_I)

Residuals:
   Min     1Q Median     3Q    Max 
-3.635 -2.511 -0.711  2.181  7.470 

Coefficients:
                              Estimate Std. Error t value Pr(>|t|)  
(Intercept)                   3.417479   1.379995   2.476   0.0145 *
conditionmergedScope         -1.178088   1.944625  -0.606   0.5456  
conditionpopulationScope     -2.637818   2.035064  -1.296   0.1970  
pol                          -0.008008   0.280524  -0.029   0.9773  
conditionmergedScope:pol      0.080571   0.387869   0.208   0.8357  
conditionpopulationScope:pol  0.415847   0.410748   1.012   0.3131  
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 3.007 on 140 degrees of freedom
  (1 observation deleted due to missingness)
Multiple R-squared:  0.02692,   Adjusted R-squared:  -0.007835 
F-statistic: 0.7746 on 5 and 140 DF,  p-value: 0.5696
Code
mod_donationI <- lm(donation ~ condition, data = gjg_I)
summary(mod_donationI)

Call:
lm(formula = donation ~ condition, data = gjg_I)

Residuals:
    Min      1Q  Median      3Q     Max 
-3.3800 -2.5918 -0.6667  2.3333  7.4082 

Coefficients:
                         Estimate Std. Error t value Pr(>|t|)    
(Intercept)                3.3800     0.4233   7.984 4.08e-13 ***
conditionmergedScope      -0.7882     0.6017  -1.310    0.192    
conditionpopulationScope  -0.7133     0.6049  -1.179    0.240    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 2.993 on 144 degrees of freedom
Multiple R-squared:  0.01432,   Adjusted R-squared:  0.0006341 
F-statistic: 1.046 on 2 and 144 DF,  p-value: 0.3539
Code
mod_policy<- lm(policyDV ~ condition, data = gjg)
summary(mod_policy)

Call:
lm(formula = policyDV ~ condition, data = gjg)

Residuals:
    Min      1Q  Median      3Q     Max 
-4.7551 -0.7551  0.2449  0.7917  1.7917 

Coefficients:
                         Estimate Std. Error t value Pr(>|t|)    
(Intercept)                5.7551     0.2121  27.135   <2e-16 ***
conditionindividualScope  -0.2951     0.2984  -0.989   0.3244    
conditionpopulationScope  -0.5468     0.3015  -1.813   0.0718 .  
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.485 on 144 degrees of freedom
Multiple R-squared:  0.02239,   Adjusted R-squared:  0.00881 
F-statistic: 1.649 on 2 and 144 DF,  p-value: 0.1959
Code
mod_policyI <- lm(policyDV ~ condition, data = gjg_I)
summary(mod_policyI)

Call:
lm(formula = policyDV ~ condition, data = gjg_I)

Residuals:
    Min      1Q  Median      3Q     Max 
-4.7551 -0.7551  0.2449  0.7917  1.7917 

Coefficients:
                         Estimate Std. Error t value Pr(>|t|)    
(Intercept)                5.4600     0.2100  26.005   <2e-16 ***
conditionmergedScope       0.2951     0.2984   0.989    0.324    
conditionpopulationScope  -0.2517     0.3000  -0.839    0.403    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.485 on 144 degrees of freedom
Multiple R-squared:  0.02239,   Adjusted R-squared:  0.00881 
F-statistic: 1.649 on 2 and 144 DF,  p-value: 0.1959

Responsibility (Help and Prevent)

Code
gjg_long<-gjg %>% gather(stim, resp, "usGovHelp":"donationEfficacy")  

gjg_long$condition <- factor(gjg_long$condition, levels = c("individualScope", "populationScope", "mergedScope"))


responsibilityHelpLong <- gjg_long %>%
  filter(grepl("Help", stim))

facet_cooker <- function(data, iv, dv, coln, rown) {
  part1 <- ggplot(data, aes(x = {{iv}}, y = {{dv}}, fill = {{iv}})) +
    geom_violin(alpha = 0.3, scale = "count") + 
  stat_summary(fun = "mean", geom = "point", size = 3, color = "black") +
    stat_summary(fun.data = mean_cl_normal, geom = "errorbar", width = 0.2,
                 #change to make a data set from allEffects with mean, low CI, high CI
                 size = 1.5, color = "black") +
    theme_classic() +
    xlab("") +
    ylab("") +
   facet_wrap(~ stim, ncol = coln, nrow = rown, scales = "free", as.table = TRUE)
  ggpar(part1, legend = "none")
}

facet_cooker(responsibilityHelpLong, condition, resp, coln = 2, rown = 2)

Code
responsibilityPreventLong <- gjg_long %>%
  filter(grepl("Prevent", stim))

facet_cooker(responsibilityPreventLong, condition, resp, coln = 2, rown = 2)

Inferential Stats

Code
mod_usGovHelp <- lm(usGovHelp ~ condition, data = gjg)
summary(mod_usGovHelp)

Call:
lm(formula = usGovHelp ~ condition, data = gjg)

Residuals:
    Min      1Q  Median      3Q     Max 
-2.7708 -0.7708  0.2292  1.0408  1.3800 

Coefficients:
                         Estimate Std. Error t value Pr(>|t|)    
(Intercept)                3.9592     0.1525  25.955   <2e-16 ***
conditionindividualScope  -0.3392     0.2146  -1.580    0.116    
conditionpopulationScope  -0.1884     0.2168  -0.869    0.387    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.068 on 144 degrees of freedom
Multiple R-squared:  0.0171,    Adjusted R-squared:  0.00345 
F-statistic: 1.253 on 2 and 144 DF,  p-value: 0.2888
Code
mod_usGovHelpI <- lm(usGovHelp ~ condition, data = gjg_I)
summary(mod_usGovHelpI)

Call:
lm(formula = usGovHelp ~ condition, data = gjg_I)

Residuals:
    Min      1Q  Median      3Q     Max 
-2.7708 -0.7708  0.2292  1.0408  1.3800 

Coefficients:
                         Estimate Std. Error t value Pr(>|t|)    
(Intercept)                3.6200     0.1510  23.973   <2e-16 ***
conditionmergedScope       0.3392     0.2146   1.580    0.116    
conditionpopulationScope   0.1508     0.2158   0.699    0.486    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.068 on 144 degrees of freedom
Multiple R-squared:  0.0171,    Adjusted R-squared:  0.00345 
F-statistic: 1.253 on 2 and 144 DF,  p-value: 0.2888
Code
mod_manufacturerHelp <- lm(manufacturerHelp ~ condition, data = gjg)
summary(mod_manufacturerHelp)

Call:
lm(formula = manufacturerHelp ~ condition, data = gjg)

Residuals:
    Min      1Q  Median      3Q     Max 
-3.1250 -0.8000  0.2000  0.8776  1.2000 

Coefficients:
                          Estimate Std. Error t value Pr(>|t|)    
(Intercept)               4.122449   0.157267  26.213   <2e-16 ***
conditionindividualScope -0.322449   0.221294  -1.457    0.147    
conditionpopulationScope  0.002551   0.223564   0.011    0.991    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.101 on 144 degrees of freedom
Multiple R-squared:  0.01943,   Adjusted R-squared:  0.005808 
F-statistic: 1.426 on 2 and 144 DF,  p-value: 0.2435
Code
mod_manufacturerHelpI <- lm(manufacturerHelp ~ condition, data = gjg_I)
summary(mod_manufacturerHelpI)

Call:
lm(formula = manufacturerHelp ~ condition, data = gjg_I)

Residuals:
    Min      1Q  Median      3Q     Max 
-3.1250 -0.8000  0.2000  0.8776  1.2000 

Coefficients:
                         Estimate Std. Error t value Pr(>|t|)    
(Intercept)                3.8000     0.1557  24.408   <2e-16 ***
conditionmergedScope       0.3224     0.2213   1.457    0.147    
conditionpopulationScope   0.3250     0.2225   1.461    0.146    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.101 on 144 degrees of freedom
Multiple R-squared:  0.01943,   Adjusted R-squared:  0.005808 
F-statistic: 1.426 on 2 and 144 DF,  p-value: 0.2435
Code
mod_individualHelp <- lm(individualHelp ~ condition, data = gjg)
summary(mod_individualHelp)

Call:
lm(formula = individualHelp ~ condition, data = gjg)

Residuals:
     Min       1Q   Median       3Q      Max 
-2.97959 -0.72000  0.08333  1.02041  1.28000 

Coefficients:
                         Estimate Std. Error t value Pr(>|t|)    
(Intercept)               3.97959    0.16004  24.866   <2e-16 ***
conditionindividualScope -0.25959    0.22520  -1.153    0.251    
conditionpopulationScope -0.06293    0.22751  -0.277    0.782    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.12 on 144 degrees of freedom
Multiple R-squared:  0.009959,  Adjusted R-squared:  -0.003792 
F-statistic: 0.7243 on 2 and 144 DF,  p-value: 0.4864
Code
mod_individualHelpI <- lm(individualHelp ~ condition, data = gjg_I)
summary(mod_individualHelpI)

Call:
lm(formula = individualHelp ~ condition, data = gjg_I)

Residuals:
     Min       1Q   Median       3Q      Max 
-2.97959 -0.72000  0.08333  1.02041  1.28000 

Coefficients:
                         Estimate Std. Error t value Pr(>|t|)    
(Intercept)                3.7200     0.1584  23.480   <2e-16 ***
conditionmergedScope       0.2596     0.2252   1.153    0.251    
conditionpopulationScope   0.1967     0.2264   0.869    0.386    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.12 on 144 degrees of freedom
Multiple R-squared:  0.009959,  Adjusted R-squared:  -0.003792 
F-statistic: 0.7243 on 2 and 144 DF,  p-value: 0.4864
Code
mod_youHelp <- lm(youHelp ~ condition, data = gjg)
summary(mod_youHelp)

Call:
lm(formula = youHelp ~ condition, data = gjg)

Residuals:
    Min      1Q  Median      3Q     Max 
-2.3542 -0.8600  0.1400  0.8163  2.1400 

Coefficients:
                         Estimate Std. Error t value Pr(>|t|)    
(Intercept)                3.1837     0.1767  18.016   <2e-16 ***
conditionindividualScope  -0.3237     0.2487  -1.302    0.195    
conditionpopulationScope   0.1705     0.2512   0.679    0.498    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.237 on 144 degrees of freedom
Multiple R-squared:  0.02736,   Adjusted R-squared:  0.01385 
F-statistic: 2.025 on 2 and 144 DF,  p-value: 0.1357
Code
mod_youHelpI <- lm(youHelp ~ condition, data = gjg_I)
summary(mod_youHelpI)

Call:
lm(formula = youHelp ~ condition, data = gjg_I)

Residuals:
    Min      1Q  Median      3Q     Max 
-2.3542 -0.8600  0.1400  0.8163  2.1400 

Coefficients:
                         Estimate Std. Error t value Pr(>|t|)    
(Intercept)                2.8600     0.1749  16.349   <2e-16 ***
conditionmergedScope       0.3237     0.2487   1.302    0.195    
conditionpopulationScope   0.4942     0.2500   1.977    0.050 *  
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.237 on 144 degrees of freedom
Multiple R-squared:  0.02736,   Adjusted R-squared:  0.01385 
F-statistic: 2.025 on 2 and 144 DF,  p-value: 0.1357
Code
# Prevent

mod_usGovPrevent <- lm(usGovPrevent ~ condition, data = gjg)
summary(mod_usGovPrevent)

Call:
lm(formula = usGovPrevent ~ condition, data = gjg)

Residuals:
     Min       1Q   Median       3Q      Max 
-2.97959 -0.88000  0.08333  1.02041  1.12000 

Coefficients:
                         Estimate Std. Error t value Pr(>|t|)    
(Intercept)               3.97959    0.14866  26.771   <2e-16 ***
conditionindividualScope -0.09959    0.20918  -0.476    0.635    
conditionpopulationScope -0.06293    0.21132  -0.298    0.766    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.041 on 144 degrees of freedom
Multiple R-squared:  0.001605,  Adjusted R-squared:  -0.01226 
F-statistic: 0.1157 on 2 and 144 DF,  p-value: 0.8908
Code
mod_usGovPreventI <- lm(usGovPrevent ~ condition, data = gjg_I)
summary(mod_usGovPreventI)

Call:
lm(formula = usGovPrevent ~ condition, data = gjg_I)

Residuals:
     Min       1Q   Median       3Q      Max 
-2.97959 -0.88000  0.08333  1.02041  1.12000 

Coefficients:
                         Estimate Std. Error t value Pr(>|t|)    
(Intercept)               3.88000    0.14716  26.366   <2e-16 ***
conditionmergedScope      0.09959    0.20918   0.476    0.635    
conditionpopulationScope  0.03667    0.21027   0.174    0.862    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.041 on 144 degrees of freedom
Multiple R-squared:  0.001605,  Adjusted R-squared:  -0.01226 
F-statistic: 0.1157 on 2 and 144 DF,  p-value: 0.8908
Code
mod_manufacturerPrevent <- lm(manufacturerPrevent ~ condition, data = gjg)
summary(mod_manufacturerPrevent)

Call:
lm(formula = manufacturerPrevent ~ condition, data = gjg)

Residuals:
    Min      1Q  Median      3Q     Max 
-3.1633 -0.4167  0.5833  0.8200  0.8367 

Coefficients:
                         Estimate Std. Error t value Pr(>|t|)    
(Intercept)               4.16327    0.13870  30.016   <2e-16 ***
conditionindividualScope  0.01673    0.19517   0.086    0.932    
conditionpopulationScope  0.25340    0.19717   1.285    0.201    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 0.9709 on 144 degrees of freedom
Multiple R-squared:  0.01414,   Adjusted R-squared:  0.0004448 
F-statistic: 1.032 on 2 and 144 DF,  p-value: 0.3587
Code
mod_manufacturerPreventI <- lm(manufacturerPrevent ~ condition, data = gjg_I)
summary(mod_manufacturerPreventI)

Call:
lm(formula = manufacturerPrevent ~ condition, data = gjg_I)

Residuals:
    Min      1Q  Median      3Q     Max 
-3.1633 -0.4167  0.5833  0.8200  0.8367 

Coefficients:
                         Estimate Std. Error t value Pr(>|t|)    
(Intercept)               4.18000    0.13731  30.443   <2e-16 ***
conditionmergedScope     -0.01673    0.19517  -0.086    0.932    
conditionpopulationScope  0.23667    0.19619   1.206    0.230    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 0.9709 on 144 degrees of freedom
Multiple R-squared:  0.01414,   Adjusted R-squared:  0.0004448 
F-statistic: 1.032 on 2 and 144 DF,  p-value: 0.3587
Code
mod_individualPrevent <- lm(individualPrevent ~ condition, data = gjg)
summary(mod_individualPrevent)

Call:
lm(formula = individualPrevent ~ condition, data = gjg)

Residuals:
    Min      1Q  Median      3Q     Max 
-2.8333 -0.8333 -0.0400  0.9592  1.1667 

Coefficients:
                           Estimate Std. Error t value Pr(>|t|)    
(Intercept)               4.0408163  0.1479763  27.307   <2e-16 ***
conditionindividualScope -0.0008163  0.2082210  -0.004    0.997    
conditionpopulationScope -0.2074830  0.2103572  -0.986    0.326    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.036 on 144 degrees of freedom
Multiple R-squared:  0.008892,  Adjusted R-squared:  -0.004874 
F-statistic: 0.6459 on 2 and 144 DF,  p-value: 0.5257
Code
mod_individualPreventI <- lm(individualPrevent ~ condition, data = gjg_I)
summary(mod_individualPreventI)

Call:
lm(formula = individualPrevent ~ condition, data = gjg_I)

Residuals:
    Min      1Q  Median      3Q     Max 
-2.8333 -0.8333 -0.0400  0.9592  1.1667 

Coefficients:
                           Estimate Std. Error t value Pr(>|t|)    
(Intercept)               4.0400000  0.1464890  27.579   <2e-16 ***
conditionmergedScope      0.0008163  0.2082210   0.004    0.997    
conditionpopulationScope -0.2066667  0.2093136  -0.987    0.325    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.036 on 144 degrees of freedom
Multiple R-squared:  0.008892,  Adjusted R-squared:  -0.004874 
F-statistic: 0.6459 on 2 and 144 DF,  p-value: 0.5257
Code
mod_youPrevent <- lm(youPrevent ~ condition, data = gjg)
summary(mod_youPrevent)

Call:
lm(formula = youPrevent ~ condition, data = gjg)

Residuals:
    Min      1Q  Median      3Q     Max 
-2.6042 -0.6042  0.3958  0.7000  1.7000 

Coefficients:
                         Estimate Std. Error t value Pr(>|t|)    
(Intercept)               3.32653    0.17446  19.068   <2e-16 ***
conditionindividualScope -0.02653    0.24548  -0.108    0.914    
conditionpopulationScope  0.27764    0.24800   1.119    0.265    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.221 on 144 degrees of freedom
Multiple R-squared:  0.01267,   Adjusted R-squared:  -0.001044 
F-statistic: 0.9238 on 2 and 144 DF,  p-value: 0.3993
Code
mod_youPreventI <- lm(youPrevent ~ condition, data = gjg_I)
summary(mod_youPreventI)

Call:
lm(formula = youPrevent ~ condition, data = gjg_I)

Residuals:
    Min      1Q  Median      3Q     Max 
-2.6042 -0.6042  0.3958  0.7000  1.7000 

Coefficients:
                         Estimate Std. Error t value Pr(>|t|)    
(Intercept)               3.30000    0.17271  19.108   <2e-16 ***
conditionmergedScope      0.02653    0.24548   0.108    0.914    
conditionpopulationScope  0.30417    0.24677   1.233    0.220    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.221 on 144 degrees of freedom
Multiple R-squared:  0.01267,   Adjusted R-squared:  -0.001044 
F-statistic: 0.9238 on 2 and 144 DF,  p-value: 0.3993

Affect Help

Code
affectLong <- gjg_long %>%
  filter(stim %in% c("upset", "sympathetic", "touched"))

facet_cooker(affectLong, condition, resp, coln = 2, rown = 2)

Inferential Stats

Code
mod_upset <- lm(upset ~ condition, data = gjg)
summary(mod_upset)

Call:
lm(formula = upset ~ condition, data = gjg)

Residuals:
    Min      1Q  Median      3Q     Max 
-1.9200 -0.9200  0.1458  1.0800  2.4082 

Coefficients:
                         Estimate Std. Error t value Pr(>|t|)    
(Intercept)                2.5918     0.1739  14.900   <2e-16 ***
conditionindividualScope   0.3282     0.2448   1.341    0.182    
conditionpopulationScope   0.2623     0.2473   1.061    0.291    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.218 on 144 degrees of freedom
Multiple R-squared:  0.01371,   Adjusted R-squared:  6.758e-06 
F-statistic:     1 on 2 and 144 DF,  p-value: 0.3702
Code
mod_upsetI <- lm(upset ~ condition, data = gjg_I)
summary(mod_upsetI)

Call:
lm(formula = upset ~ condition, data = gjg_I)

Residuals:
    Min      1Q  Median      3Q     Max 
-1.9200 -0.9200  0.1458  1.0800  2.4082 

Coefficients:
                         Estimate Std. Error t value Pr(>|t|)    
(Intercept)               2.92000    0.17220  16.957   <2e-16 ***
conditionmergedScope     -0.32816    0.24476  -1.341    0.182    
conditionpopulationScope -0.06583    0.24605  -0.268    0.789    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.218 on 144 degrees of freedom
Multiple R-squared:  0.01371,   Adjusted R-squared:  6.758e-06 
F-statistic:     1 on 2 and 144 DF,  p-value: 0.3702
Code
mod_sympathetic <- lm(sympathetic ~ condition, data = gjg)
summary(mod_sympathetic)

Call:
lm(formula = sympathetic ~ condition, data = gjg)

Residuals:
     Min       1Q   Median       3Q      Max 
-2.66000 -0.66000 -0.08333  0.74405  1.91667 

Coefficients:
                         Estimate Std. Error t value Pr(>|t|)    
(Intercept)                3.4286     0.1510  22.706   <2e-16 ***
conditionindividualScope   0.2314     0.2125   1.089    0.278    
conditionpopulationScope  -0.3452     0.2147  -1.608    0.110    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.057 on 144 degrees of freedom
Multiple R-squared:  0.04866,   Adjusted R-squared:  0.03545 
F-statistic: 3.683 on 2 and 144 DF,  p-value: 0.02756
Code
mod_sympatheticI <- lm(sympathetic ~ condition, data = gjg_I)
summary(mod_sympatheticI)

Call:
lm(formula = sympathetic ~ condition, data = gjg_I)

Residuals:
     Min       1Q   Median       3Q      Max 
-2.66000 -0.66000 -0.08333  0.74405  1.91667 

Coefficients:
                         Estimate Std. Error t value Pr(>|t|)    
(Intercept)                3.6600     0.1495  24.484  < 2e-16 ***
conditionmergedScope      -0.2314     0.2125  -1.089  0.27789    
conditionpopulationScope  -0.5767     0.2136  -2.700  0.00777 ** 
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.057 on 144 degrees of freedom
Multiple R-squared:  0.04866,   Adjusted R-squared:  0.03545 
F-statistic: 3.683 on 2 and 144 DF,  p-value: 0.02756
Code
mod_touched <- lm(touched ~ condition, data = gjg)
summary(mod_touched)

Call:
lm(formula = touched ~ condition, data = gjg)

Residuals:
    Min      1Q  Median      3Q     Max 
-2.2600 -0.7551 -0.2600  0.7400  2.3542 

Coefficients:
                         Estimate Std. Error t value Pr(>|t|)    
(Intercept)                2.7551     0.1724  15.983   <2e-16 ***
conditionindividualScope   0.5049     0.2426   2.082   0.0392 *  
conditionpopulationScope  -0.1093     0.2450  -0.446   0.6563    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.207 on 144 degrees of freedom
Multiple R-squared:  0.04812,   Adjusted R-squared:  0.0349 
F-statistic:  3.64 on 2 and 144 DF,  p-value: 0.02871
Code
mod_touchedI <- lm(touched ~ condition, data = gjg_I)
summary(mod_touchedI)

Call:
lm(formula = touched ~ condition, data = gjg_I)

Residuals:
    Min      1Q  Median      3Q     Max 
-2.2600 -0.7551 -0.2600  0.7400  2.3542 

Coefficients:
                         Estimate Std. Error t value Pr(>|t|)    
(Intercept)                3.2600     0.1706  19.104   <2e-16 ***
conditionmergedScope      -0.5049     0.2426  -2.082   0.0392 *  
conditionpopulationScope  -0.6142     0.2438  -2.519   0.0129 *  
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.207 on 144 degrees of freedom
Multiple R-squared:  0.04812,   Adjusted R-squared:  0.0349 
F-statistic:  3.64 on 2 and 144 DF,  p-value: 0.02871

Efficacy

Code
efficacyHelpLong <- gjg_long %>%
  filter(grepl("Efficacy", stim))

facet_cooker(efficacyHelpLong, condition, resp, coln = 2, rown = 2)

Inferential Stats

Code
mod_studyDonationEfficacy <- lm(studyDonationEfficacy ~ condition, data = gjg)
summary(mod_studyDonationEfficacy)

Call:
lm(formula = studyDonationEfficacy ~ condition, data = gjg)

Residuals:
    Min      1Q  Median      3Q     Max 
-4.1800 -0.5833  0.4167  1.4167  2.4286 

Coefficients:
                         Estimate Std. Error t value Pr(>|t|)    
(Intercept)                4.5714     0.2205  20.733   <2e-16 ***
conditionindividualScope   0.6086     0.3103   1.961   0.0518 .  
conditionpopulationScope   0.0119     0.3135   0.038   0.9698    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.543 on 144 degrees of freedom
Multiple R-squared:  0.03376,   Adjusted R-squared:  0.02034 
F-statistic: 2.516 on 2 and 144 DF,  p-value: 0.08433
Code
mod_studyDonationEfficacyI <- lm(studyDonationEfficacy ~ condition, data = gjg_I)
summary(mod_studyDonationEfficacyI)

Call:
lm(formula = studyDonationEfficacy ~ condition, data = gjg_I)

Residuals:
    Min      1Q  Median      3Q     Max 
-4.1800 -0.5833  0.4167  1.4167  2.4286 

Coefficients:
                         Estimate Std. Error t value Pr(>|t|)    
(Intercept)                5.1800     0.2183  23.731   <2e-16 ***
conditionmergedScope      -0.6086     0.3103  -1.961   0.0518 .  
conditionpopulationScope  -0.5967     0.3119  -1.913   0.0577 .  
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.543 on 144 degrees of freedom
Multiple R-squared:  0.03376,   Adjusted R-squared:  0.02034 
F-statistic: 2.516 on 2 and 144 DF,  p-value: 0.08433
Code
mod_studyPolicyEfficacy <- lm(studyPolicyEfficacy ~ condition, data = gjg)
summary(mod_studyPolicyEfficacy)

Call:
lm(formula = studyPolicyEfficacy ~ condition, data = gjg)

Residuals:
   Min     1Q Median     3Q    Max 
-3.898 -0.320  0.102  0.680  2.102 

Coefficients:
                         Estimate Std. Error t value Pr(>|t|)    
(Intercept)               4.89796    0.17467  28.041   <2e-16 ***
conditionindividualScope  0.42204    0.24579   1.717   0.0881 .  
conditionpopulationScope  0.06037    0.24831   0.243   0.8082    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.223 on 144 degrees of freedom
Multiple R-squared:  0.02342,   Adjusted R-squared:  0.009855 
F-statistic: 1.727 on 2 and 144 DF,  p-value: 0.1816
Code
mod_studyPolicyEfficacyI <- lm(studyPolicyEfficacy ~ condition, data = gjg_I)
summary(mod_studyPolicyEfficacyI)

Call:
lm(formula = studyPolicyEfficacy ~ condition, data = gjg_I)

Residuals:
   Min     1Q Median     3Q    Max 
-3.898 -0.320  0.102  0.680  2.102 

Coefficients:
                         Estimate Std. Error t value Pr(>|t|)    
(Intercept)                5.3200     0.1729  30.766   <2e-16 ***
conditionmergedScope      -0.4220     0.2458  -1.717   0.0881 .  
conditionpopulationScope  -0.3617     0.2471  -1.464   0.1454    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.223 on 144 degrees of freedom
Multiple R-squared:  0.02342,   Adjusted R-squared:  0.009855 
F-statistic: 1.727 on 2 and 144 DF,  p-value: 0.1816
Code
mod_donationEfficacy <- lm(donationEfficacy ~ condition, data = gjg)
summary(mod_donationEfficacy)

Call:
lm(formula = donationEfficacy ~ condition, data = gjg)

Residuals:
    Min      1Q  Median      3Q     Max 
-3.3200 -1.3200  0.2708  1.1252  3.2708 

Coefficients:
                         Estimate Std. Error t value Pr(>|t|)    
(Intercept)                4.0204     0.2349  17.115   <2e-16 ***
conditionindividualScope   0.2996     0.3305   0.906    0.366    
conditionpopulationScope  -0.2912     0.3339  -0.872    0.385    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.644 on 144 degrees of freedom
Multiple R-squared:  0.02149,   Adjusted R-squared:  0.007904 
F-statistic: 1.582 on 2 and 144 DF,  p-value: 0.2092
Code
mod_donationEfficacyI <- lm(donationEfficacy ~ condition, data = gjg_I)
summary(mod_donationEfficacyI)

Call:
lm(formula = donationEfficacy ~ condition, data = gjg_I)

Residuals:
    Min      1Q  Median      3Q     Max 
-3.3200 -1.3200  0.2708  1.1252  3.2708 

Coefficients:
                         Estimate Std. Error t value Pr(>|t|)    
(Intercept)                4.3200     0.2325  18.577   <2e-16 ***
conditionmergedScope      -0.2996     0.3305  -0.906   0.3662    
conditionpopulationScope  -0.5908     0.3323  -1.778   0.0775 .  
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.644 on 144 degrees of freedom
Multiple R-squared:  0.02149,   Adjusted R-squared:  0.007904 
F-statistic: 1.582 on 2 and 144 DF,  p-value: 0.2092

Morality

Code
moralIssueLong <- gjg_long %>%
  filter(grepl("Moral", stim))

facet_cooker(moralIssueLong, condition, resp, coln = 2, rown = 2)

Code
blameLong <- gjg_long %>%
  filter(grepl("Blame", stim))

facet_cooker(blameLong, condition, resp, coln = 2, rown = 2)

Inferential Stats

Code
mod_donatingMoral <- lm(donatingMoral ~ condition, data = gjg)
summary(mod_donatingMoral)

Call:
lm(formula = donatingMoral ~ condition, data = gjg)

Residuals:
    Min      1Q  Median      3Q     Max 
-3.1800 -1.1800  0.0417  1.0417  3.3469 

Coefficients:
                         Estimate Std. Error t value Pr(>|t|)    
(Intercept)                3.6531     0.2364  15.451   <2e-16 ***
conditionindividualScope   0.5269     0.3327   1.584    0.115    
conditionpopulationScope   0.3053     0.3361   0.908    0.365    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.655 on 144 degrees of freedom
Multiple R-squared:  0.01725,   Adjusted R-squared:  0.003596 
F-statistic: 1.263 on 2 and 144 DF,  p-value: 0.2858
Code
mod_donatingMoralI <- lm(donatingMoral ~ condition, data = gjg_I)
summary(mod_donatingMoralI)

Call:
lm(formula = donatingMoral ~ condition, data = gjg_I)

Residuals:
    Min      1Q  Median      3Q     Max 
-3.1800 -1.1800  0.0417  1.0417  3.3469 

Coefficients:
                         Estimate Std. Error t value Pr(>|t|)    
(Intercept)                4.1800     0.2340  17.860   <2e-16 ***
conditionmergedScope      -0.5269     0.3327  -1.584    0.115    
conditionpopulationScope  -0.2217     0.3344  -0.663    0.508    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.655 on 144 degrees of freedom
Multiple R-squared:  0.01725,   Adjusted R-squared:  0.003596 
F-statistic: 1.263 on 2 and 144 DF,  p-value: 0.2858
Code
mod_eatingMoral <- lm(eatingMoral ~ condition, data = gjg)
summary(mod_eatingMoral)

Call:
lm(formula = eatingMoral ~ condition, data = gjg)

Residuals:
   Min     1Q Median     3Q    Max 
-3.125 -1.735  0.060  1.265  3.265 

Coefficients:
                         Estimate Std. Error t value Pr(>|t|)    
(Intercept)                3.7347     0.2536  14.729   <2e-16 ***
conditionindividualScope   0.2053     0.3568   0.575    0.566    
conditionpopulationScope   0.3903     0.3604   1.083    0.281    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.775 on 144 degrees of freedom
Multiple R-squared:  0.008088,  Adjusted R-squared:  -0.005689 
F-statistic: 0.5871 on 2 and 144 DF,  p-value: 0.5573
Code
mod_eatingMoralI <- lm(eatingMoral ~ condition, data = gjg_I)
summary(mod_eatingMoralI)

Call:
lm(formula = eatingMoral ~ condition, data = gjg_I)

Residuals:
   Min     1Q Median     3Q    Max 
-3.125 -1.735  0.060  1.265  3.265 

Coefficients:
                         Estimate Std. Error t value Pr(>|t|)    
(Intercept)                3.9400     0.2510  15.697   <2e-16 ***
conditionmergedScope      -0.2053     0.3568  -0.575    0.566    
conditionpopulationScope   0.1850     0.3587   0.516    0.607    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.775 on 144 degrees of freedom
Multiple R-squared:  0.008088,  Adjusted R-squared:  -0.005689 
F-statistic: 0.5871 on 2 and 144 DF,  p-value: 0.5573
Code
mod_adMoral <- lm(adMoral ~ condition, data = gjg)
summary(mod_adMoral)

Call:
lm(formula = adMoral ~ condition, data = gjg)

Residuals:
    Min      1Q  Median      3Q     Max 
-4.3061 -0.9213  0.2200  1.2200  2.2200 

Coefficients:
                         Estimate Std. Error t value Pr(>|t|)    
(Intercept)                5.3061     0.2416  21.964   <2e-16 ***
conditionindividualScope  -0.5261     0.3399  -1.548    0.124    
conditionpopulationScope  -0.2436     0.3434  -0.709    0.479    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.691 on 144 degrees of freedom
Multiple R-squared:  0.0164,    Adjusted R-squared:  0.002739 
F-statistic:   1.2 on 2 and 144 DF,  p-value: 0.304
Code
mod_adMoralI <- lm(adMoral ~ condition, data = gjg_I)
summary(mod_adMoralI)

Call:
lm(formula = adMoral ~ condition, data = gjg_I)

Residuals:
    Min      1Q  Median      3Q     Max 
-4.3061 -0.9213  0.2200  1.2200  2.2200 

Coefficients:
                         Estimate Std. Error t value Pr(>|t|)    
(Intercept)                4.7800     0.2392  19.987   <2e-16 ***
conditionmergedScope       0.5261     0.3399   1.548    0.124    
conditionpopulationScope   0.2825     0.3417   0.827    0.410    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.691 on 144 degrees of freedom
Multiple R-squared:  0.0164,    Adjusted R-squared:  0.002739 
F-statistic:   1.2 on 2 and 144 DF,  p-value: 0.304
Code
mod_sugarMoral <- lm(sugarMoral ~ condition, data = gjg)
summary(mod_sugarMoral)

Call:
lm(formula = sugarMoral ~ condition, data = gjg)

Residuals:
    Min      1Q  Median      3Q     Max 
-4.5625 -0.5714  0.4286  1.4286  1.7400 

Coefficients:
                          Estimate Std. Error t value Pr(>|t|)    
(Intercept)               5.571429   0.204621  27.228   <2e-16 ***
conditionindividualScope -0.311429   0.287927  -1.082    0.281    
conditionpopulationScope -0.008929   0.290881  -0.031    0.976    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.432 on 144 degrees of freedom
Multiple R-squared:  0.01042,   Adjusted R-squared:  -0.003321 
F-statistic: 0.7584 on 2 and 144 DF,  p-value: 0.4703
Code
mod_sugarMoralI <- lm(sugarMoral ~ condition, data = gjg_I)
summary(mod_sugarMoralI)

Call:
lm(formula = sugarMoral ~ condition, data = gjg_I)

Residuals:
    Min      1Q  Median      3Q     Max 
-4.5625 -0.5714  0.4286  1.4286  1.7400 

Coefficients:
                         Estimate Std. Error t value Pr(>|t|)    
(Intercept)                5.2600     0.2026  25.967   <2e-16 ***
conditionmergedScope       0.3114     0.2879   1.082    0.281    
conditionpopulationScope   0.3025     0.2894   1.045    0.298    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.432 on 144 degrees of freedom
Multiple R-squared:  0.01042,   Adjusted R-squared:  -0.003321 
F-statistic: 0.7584 on 2 and 144 DF,  p-value: 0.4703
Code
mod_manufacturerBlame <- lm(manufacturerBlame ~ condition, data = gjg)
summary(mod_manufacturerBlame)

Call:
lm(formula = manufacturerBlame ~ condition, data = gjg)

Residuals:
     Min       1Q   Median       3Q      Max 
-2.06250 -0.84000  0.04082  0.93750  1.16000 

Coefficients:
                         Estimate Std. Error t value Pr(>|t|)    
(Intercept)                3.9592     0.1333  29.693   <2e-16 ***
conditionindividualScope  -0.1192     0.1876  -0.635    0.526    
conditionpopulationScope   0.1033     0.1895   0.545    0.587    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 0.9334 on 144 degrees of freedom
Multiple R-squared:  0.009598,  Adjusted R-squared:  -0.004157 
F-statistic: 0.6978 on 2 and 144 DF,  p-value: 0.4994
Code
mod_manufacturerBlameI <- lm(manufacturerBlame ~ condition, data = gjg_I)
summary(mod_manufacturerBlameI)

Call:
lm(formula = manufacturerBlame ~ condition, data = gjg_I)

Residuals:
     Min       1Q   Median       3Q      Max 
-2.06250 -0.84000  0.04082  0.93750  1.16000 

Coefficients:
                         Estimate Std. Error t value Pr(>|t|)    
(Intercept)                3.8400     0.1320  29.091   <2e-16 ***
conditionmergedScope       0.1192     0.1876   0.635    0.526    
conditionpopulationScope   0.2225     0.1886   1.180    0.240    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 0.9334 on 144 degrees of freedom
Multiple R-squared:  0.009598,  Adjusted R-squared:  -0.004157 
F-statistic: 0.6978 on 2 and 144 DF,  p-value: 0.4994
Code
mod_indBlame <- lm(individualBlame ~ condition, data = gjg)
summary(mod_indBlame)

Call:
lm(formula = individualBlame ~ condition, data = gjg)

Residuals:
    Min      1Q  Median      3Q     Max 
-2.4200 -0.4200 -0.2083  0.7347  1.7917 

Coefficients:
                         Estimate Std. Error t value Pr(>|t|)    
(Intercept)               3.26531    0.15229  21.441   <2e-16 ***
conditionindividualScope  0.15469    0.21429   0.722    0.472    
conditionpopulationScope -0.05697    0.21649  -0.263    0.793    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.066 on 144 degrees of freedom
Multiple R-squared:  0.007173,  Adjusted R-squared:  -0.006617 
F-statistic: 0.5202 on 2 and 144 DF,  p-value: 0.5955
Code
mod_indBlameI <- lm(individualBlame ~ condition, data = gjg_I)
summary(mod_indBlameI)

Call:
lm(formula = individualBlame ~ condition, data = gjg_I)

Residuals:
    Min      1Q  Median      3Q     Max 
-2.4200 -0.4200 -0.2083  0.7347  1.7917 

Coefficients:
                         Estimate Std. Error t value Pr(>|t|)    
(Intercept)                3.4200     0.1508  22.685   <2e-16 ***
conditionmergedScope      -0.1547     0.2143  -0.722    0.472    
conditionpopulationScope  -0.2117     0.2154  -0.983    0.327    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.066 on 144 degrees of freedom
Multiple R-squared:  0.007173,  Adjusted R-squared:  -0.006617 
F-statistic: 0.5202 on 2 and 144 DF,  p-value: 0.5955

Creating Composites Z-score

Code
gjg <- gjg %>%
  mutate(
    govResponsibility = (usGovHelp + usGovPrevent) / 2,
    indivResponsibility = (individualHelp + individualPrevent + individualBlame) / 3,
    manufacturerResponsibility = (manufacturerHelp + manufacturerPrevent + manufacturerBlame) / 3,
    manufacturerMoral = (adMoral + sugarMoral) / 2,
    
    youResponsibility = (youHelp + youPrevent) / 2,
    compassion = (upset + sympathetic + touched) / 3,
    indivEfficacy = (studyDonationEfficacy + donationEfficacy) / 2,
    indivMoral = (donatingMoral + eatingMoral) / 2
    
  )

# Standardizing variables
variables_to_standardize <- c("usGovHelp", "manufacturerHelp", "individualHelp", "youHelp", "usGovPrevent", "manufacturerPrevent", "individualPrevent", "youPrevent", "upset", "sympathetic", "touched", "donatingMoral", "eatingMoral", "adMoral", "sugarMoral", "manufacturerBlame", "individualBlame", "studyDonationEfficacy", "studyPolicyEfficacy", "donationEfficacy", "govResponsibility", "indivResponsibility", "manufacturerResponsibility", "youResponsibility", "compassion", "indivEfficacy", "manufacturerMoral", "indivMoral")

gjg_z <- gjg %>%
  mutate(across(all_of(variables_to_standardize), ~ as.numeric(scale(.)))) 

Inferential Stats

  • Individual & Merged donate more than Structural
Code
gjg$condition <- relevel(gjg$condition, ref = "mergedScope")
gjg_I <- gjg
gjg_I$condition <- relevel(gjg_I$condition, ref = "individualScope")


mod_compRes<- lm(manufacturerResponsibility ~ condition, data = gjg)
summary(mod_compRes)

Call:
lm(formula = manufacturerResponsibility ~ condition, data = gjg)

Residuals:
    Min      1Q  Median      3Q     Max 
-2.4150 -0.6067  0.1319  0.7267  1.0600 

Coefficients:
                         Estimate Std. Error t value Pr(>|t|)    
(Intercept)                4.0816     0.1184  34.479   <2e-16 ***
conditionindividualScope  -0.1416     0.1666  -0.850    0.397    
conditionpopulationScope   0.1198     0.1683   0.712    0.478    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 0.8287 on 144 degrees of freedom
Multiple R-squared:  0.0167,    Adjusted R-squared:  0.003043 
F-statistic: 1.223 on 2 and 144 DF,  p-value: 0.2974
Code
confint(mod_compRes)
                              2.5 %    97.5 %
(Intercept)               3.8476475 4.3156178
conditionindividualScope -0.4708790 0.1876137
conditionpopulationScope -0.2128678 0.4523802
Code
mod_indRes<- lm(indivResponsibility ~ condition, data = gjg)
summary(mod_indRes)

Call:
lm(formula = indivResponsibility ~ condition, data = gjg)

Residuals:
    Min      1Q  Median      3Q     Max 
-2.6528 -0.5407 -0.0600  0.6806  1.3472 

Coefficients:
                         Estimate Std. Error t value Pr(>|t|)    
(Intercept)               3.76190    0.12657  29.722   <2e-16 ***
conditionindividualScope -0.03524    0.17810  -0.198    0.843    
conditionpopulationScope -0.10913    0.17992  -0.607    0.545    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 0.886 on 144 degrees of freedom
Multiple R-squared:  0.00265,   Adjusted R-squared:  -0.0112 
F-statistic: 0.1913 on 2 and 144 DF,  p-value: 0.8261
Code
confint(mod_indRes)
                              2.5 %    97.5 %
(Intercept)               3.5117340 4.0120755
conditionindividualScope -0.3872596 0.3167834
conditionpopulationScope -0.4647598 0.2465058
Code
mod_compassion<- lm(compassion ~ condition, data = gjg)
summary(mod_compassion)

Call:
lm(formula = compassion ~ condition, data = gjg)

Residuals:
     Min       1Q   Median       3Q      Max 
-2.28000 -0.59184  0.05333  0.72000  2.13889 

Coefficients:
                         Estimate Std. Error t value Pr(>|t|)    
(Intercept)               2.92517    0.13250  22.077   <2e-16 ***
conditionindividualScope  0.35483    0.18645   1.903    0.059 .  
conditionpopulationScope -0.06406    0.18836  -0.340    0.734    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 0.9275 on 144 degrees of freedom
Multiple R-squared:  0.03901,   Adjusted R-squared:  0.02566 
F-statistic: 2.923 on 2 and 144 DF,  p-value: 0.05698
Code
confint(mod_compassion)
                               2.5 %    97.5 %
(Intercept)               2.66327091 3.1870692
conditionindividualScope -0.01369484 0.7233547
conditionpopulationScope -0.43636436 0.3082464
Code
mod_indivEff<- lm(indivEfficacy ~ condition, data = gjg)
summary(mod_indivEff)

Call:
lm(formula = indivEfficacy ~ condition, data = gjg)

Residuals:
    Min      1Q  Median      3Q     Max 
-3.7500 -0.7959  0.2500  0.8437  2.8438 

Coefficients:
                         Estimate Std. Error t value Pr(>|t|)    
(Intercept)                4.2959     0.2017  21.295   <2e-16 ***
conditionindividualScope   0.4541     0.2839   1.600    0.112    
conditionpopulationScope  -0.1397     0.2868  -0.487    0.627    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.412 on 144 degrees of freedom
Multiple R-squared:  0.03204,   Adjusted R-squared:  0.01859 
F-statistic: 2.383 on 2 and 144 DF,  p-value: 0.0959
Code
confint(mod_indivEff)
                              2.5 %    97.5 %
(Intercept)               3.8971711 4.6946657
conditionindividualScope -0.1070055 1.0151688
conditionpopulationScope -0.7065116 0.4271749
Code
mod_polEff<- lm(studyPolicyEfficacy ~ condition, data = gjg)
summary(mod_polEff)

Call:
lm(formula = studyPolicyEfficacy ~ condition, data = gjg)

Residuals:
   Min     1Q Median     3Q    Max 
-3.898 -0.320  0.102  0.680  2.102 

Coefficients:
                         Estimate Std. Error t value Pr(>|t|)    
(Intercept)               4.89796    0.17467  28.041   <2e-16 ***
conditionindividualScope  0.42204    0.24579   1.717   0.0881 .  
conditionpopulationScope  0.06037    0.24831   0.243   0.8082    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.223 on 144 degrees of freedom
Multiple R-squared:  0.02342,   Adjusted R-squared:  0.009855 
F-statistic: 1.727 on 2 and 144 DF,  p-value: 0.1816
Code
confint(mod_polEff)
                               2.5 %    97.5 %
(Intercept)               4.55270227 5.2432161
conditionindividualScope -0.06377873 0.9078604
conditionpopulationScope -0.43042933 0.5511776