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)
# read in data files
setwd("~/Desktop")
gjg_raw <-read.csv("/Users/mtrenfield17/Desktop/Research/Boston College Research/SISC Lab Research/I:S Project/Study 2a (Text & Drive)/Scope Project Study 2a.csv")
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)
#### filtering people who failed the attn check ####
gjg <- gjg_raw %>% filter(attentionCheck == 4)
## 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, helpDV_2, helpDV_3, helpDV_4, preventDV_1, preventDV_2, preventDV_3, preventDV_4, feelingsMeasures_1, feelingsMeasures_2, feelingsMeasures_3, moral_1, moral_2, moral_3, blame_1, blame_2, efficacy_1, efficacy_2, efficacy_3, efficacy_4, age, pol, pid, edu, inc), 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'] <-'driverHelp'
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'] <-'driverPrevent'
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'] <-'takingPrecautionsMoral'
names(gjg)[names(gjg) == 'moral_3'] <-'manufacturersMoral'
names(gjg)[names(gjg) == 'blame_1'] <-'manufacturerBlame'
names(gjg)[names(gjg) == 'blame_2'] <-'individualsBlame'
names(gjg)[names(gjg) == 'efficacy_1'] <-'studyDonationEfficacy'
names(gjg)[names(gjg) == 'efficacy_2'] <-'studyPolicyEfficacy'
names(gjg)[names(gjg) == 'efficacy_3'] <-'donationEfficacy'
names(gjg)[names(gjg) == 'efficacy_4'] <-'punishingIndividualsEfficacy'
gjg_raw <- gjg_raw %>% filter(consent == 8)
gjg_raw %>%
group_by(attentionCheck) %>%
dplyr::summarise(n = n()) %>%
mutate(freq = n / sum(n))
8 participants failed the attention check.
# Subset your data frame to include only the demographic columns
demo_gjg <- gjg[, c("gen", "race", "inc_TEXT", "edu_TEXT", "pol_TEXT", "pid_TEXT", "area")]
# Age
mean(gjg$age, na.rm=TRUE)
## [1] 42.13339
sd(gjg$age, na.rm=TRUE)
## [1] 13.49073
# 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 gen :
## Var1 Freq Percent
## 1 1 0.08
## 2 1 587 49.24
## 3 2 582 48.83
## 4 3 22 1.85
##
## Table of frequencies for race :
## Var1 Freq Percent
## 1 1 2 0.17
## 2 1,2 1 0.08
## 3 1,2,5 1 0.08
## 4 1,2,5,6 1 0.08
## 5 1,2,5,8 1 0.08
## 6 1,2,8 2 0.17
## 7 1,5 2 0.17
## 8 1,5,8 2 0.17
## 9 1,6 1 0.08
## 10 1,8 11 0.92
## 11 2 129 10.82
## 12 2,4,8 1 0.08
## 13 2,5 7 0.59
## 14 2,5,8 1 0.08
## 15 2,8 13 1.09
## 16 3 35 2.94
## 17 3,5 1 0.08
## 18 3,7 1 0.08
## 19 3,8 7 0.59
## 20 3,9 1 0.08
## 21 4 9 0.76
## 22 5 46 3.86
## 23 5,6 1 0.08
## 24 5,6,8 1 0.08
## 25 5,8 36 3.02
## 26 6,8 1 0.08
## 27 8 841 70.55
## 28 9 29 2.43
## 29 9,5 1 0.08
## 30 9,7 2 0.17
## 31 9,8 5 0.42
##
## Table of frequencies for inc_TEXT :
## Var1 Freq Percent
## 1 1 0.08
## 2 $100,000 - $149,999 200 16.78
## 3 $150,000 - $199,999 85 7.13
## 4 $25,000 - $49,999 285 23.91
## 5 $50,000 - $74,999 251 21.06
## 6 $75,000 - $99,999 185 15.52
## 7 less than $25,000 139 11.66
## 8 more than $200,000 46 3.86
##
## Table of frequencies for edu_TEXT :
## Var1 Freq Percent
## 1 Bachelor's degree 451 37.84
## 2 Graduate degree (Masters, PhD, etc) 190 15.94
## 3 High school diploma or GED 154 12.92
## 4 Some college, Technical degree, or Associates degree 390 32.72
## 5 Some schooling, but no high school diploma or degree 7 0.59
##
## Table of frequencies for pol_TEXT :
## Var1 Freq Percent
## 1 2 0.17
## 2 Conservative 143 12.00
## 3 Liberal 280 23.49
## 4 Moderate 241 20.22
## 5 Somewhat Conservative 118 9.90
## 6 Somewhat Liberal 158 13.26
## 7 Very Conservative 69 5.79
## 8 Very Liberal 181 15.18
##
## Table of frequencies for pid_TEXT :
## Var1 Freq Percent
## 1 Democrat 554 46.48
## 2 Independent / Other 356 29.87
## 3 Republican 282 23.66
##
## Table of frequencies for area :
## Var1 Freq Percent
## 1 1 329 27.60
## 2 2 630 52.85
## 3 3 233 19.55
DVs <- gjg[c("policyDV", "donation", "usGovHelp", "manufacturerHelp", "driverHelp", "youHelp", "usGovPrevent", "manufacturerPrevent", "driverPrevent", "youPrevent", "upset", "sympathetic", "touched", "donatingMoral", "takingPrecautionsMoral", "manufacturersMoral", "manufacturerBlame", "individualsBlame", "studyDonationEfficacy", "studyPolicyEfficacy", "donationEfficacy", "punishingIndividualsEfficacy", "pol", "edu", "inc", "age")]
# 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)
Scree plot suggests (I have no clue)
eigenvalue method suggests 6
Parallel Analysis suggests 7
fit <- factanal(na.omit(efaDVs), factors=6, rotation="promax", scores = "regression")
print(fit, digits = 2, cutoff = .3, sort = TRUE)
##
## Call:
## factanal(x = na.omit(efaDVs), factors = 6, scores = "regression", rotation = "promax")
##
## Uniquenesses:
## policyDV donation
## 0.52 0.86
## usGovHelp manufacturerHelp
## 0.00 0.29
## driverHelp youHelp
## 0.68 0.00
## usGovPrevent manufacturerPrevent
## 0.40 0.16
## driverPrevent youPrevent
## 0.36 0.62
## upset sympathetic
## 0.57 0.25
## touched donatingMoral
## 0.32 0.59
## takingPrecautionsMoral manufacturersMoral
## 0.76 0.46
## manufacturerBlame individualsBlame
## 0.51 0.78
## studyDonationEfficacy studyPolicyEfficacy
## 0.76 0.72
## donationEfficacy punishingIndividualsEfficacy
## 0.66 0.74
##
## Loadings:
## Factor1 Factor2 Factor3 Factor4 Factor5 Factor6
## policyDV 0.65
## manufacturerHelp 0.77
## manufacturerPrevent 1.03
## manufacturersMoral 0.54 0.42
## manufacturerBlame 0.71
## donatingMoral 0.75
## donationEfficacy 0.62
## upset 0.58
## sympathetic 0.92
## touched 0.74
## driverPrevent 0.88
## youHelp 0.97
## usGovHelp 0.97
## donation
## driverHelp 0.44
## usGovPrevent 0.40 0.50
## youPrevent 0.43
## takingPrecautionsMoral 0.34
## individualsBlame 0.48
## studyDonationEfficacy 0.37
## studyPolicyEfficacy 0.34
## punishingIndividualsEfficacy 0.42
##
## Factor1 Factor2 Factor3 Factor4 Factor5 Factor6
## SS loadings 3.24 1.92 1.83 1.57 1.31 1.26
## Proportion Var 0.15 0.09 0.08 0.07 0.06 0.06
## Cumulative Var 0.15 0.23 0.32 0.39 0.45 0.51
##
## Factor Correlations:
## Factor1 Factor2 Factor3 Factor4 Factor5 Factor6
## Factor1 1.00 0.26 -0.27 -0.27 0.32 0.37
## Factor2 0.26 1.00 -0.51 -0.31 0.17 0.40
## Factor3 -0.27 -0.51 1.00 0.28 -0.04 -0.54
## Factor4 -0.27 -0.31 0.28 1.00 -0.43 -0.65
## Factor5 0.32 0.17 -0.04 -0.43 1.00 0.38
## Factor6 0.37 0.40 -0.54 -0.65 0.38 1.00
##
## Test of the hypothesis that 6 factors are sufficient.
## The chi square statistic is 889.42 on 114 degrees of freedom.
## The p-value is 2.31e-120
loads <- fit$loadings
fa.diagram(loads)
# ## 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)
model <- '
responsibilityHelp =~ usGovHelp + manufacturerHelp + driverHelp + youHelp
responsibilityPrevent =~ usGovPrevent + manufacturerPrevent + driverPrevent + youPrevent
affect =~ upset + sympathetic + touched
moralIssue =~ donatingMoral + takingPrecautionsMoral + manufacturersMoral
blame =~ manufacturerBlame + individualsBlame
efficacy =~ studyDonationEfficacy + studyPolicyEfficacy + donationEfficacy + punishingIndividualsEfficacy
'
fit <- cfa(model, data = factorDVs)
summary(fit, fit.measures=TRUE)
## lavaan 0.6.15 ended normally after 73 iterations
##
## Estimator ML
## Optimization method NLMINB
## Number of model parameters 55
##
## Used Total
## Number of observations 1190 1192
##
## Model Test User Model:
##
## Test statistic 2979.412
## Degrees of freedom 155
## P-value (Chi-square) 0.000
##
## Model Test Baseline Model:
##
## Test statistic 8955.612
## Degrees of freedom 190
## P-value 0.000
##
## User Model versus Baseline Model:
##
## Comparative Fit Index (CFI) 0.678
## Tucker-Lewis Index (TLI) 0.605
##
## Loglikelihood and Information Criteria:
##
## Loglikelihood user model (H0) -34745.548
## Loglikelihood unrestricted model (H1) -33255.842
##
## Akaike (AIC) 69601.095
## Bayesian (BIC) 69880.589
## Sample-size adjusted Bayesian (SABIC) 69705.889
##
## Root Mean Square Error of Approximation:
##
## RMSEA 0.124
## 90 Percent confidence interval - lower 0.120
## 90 Percent confidence interval - upper 0.128
## 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.104
##
## 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.497 0.065 23.108 0.000
## driverHelp 0.261 0.044 5.906 0.000
## youHelp 0.678 0.054 12.546 0.000
## responsibilityPrevent =~
## usGovPrevent 1.000
## manufctrrPrvnt 1.378 0.056 24.781 0.000
## driverPrevent 0.094 0.029 3.232 0.001
## youPrevent 0.423 0.049 8.566 0.000
## affect =~
## upset 1.000
## sympathetic 1.175 0.054 21.917 0.000
## touched 1.344 0.061 22.104 0.000
## moralIssue =~
## donatingMoral 1.000
## takngPrctnsMrl 0.650 0.069 9.407 0.000
## manufactrrsMrl 1.750 0.123 14.176 0.000
## blame =~
## manufacturrBlm 1.000
## individualsBlm -0.048 0.023 -2.128 0.033
## efficacy =~
## stdyDntnEffccy 1.000
## stdyPlcyEffccy 1.101 0.096 11.529 0.000
## donationEffccy 1.148 0.100 11.529 0.000
## pnshngIndvdlsE 0.866 0.085 10.242 0.000
##
## Covariances:
## Estimate Std.Err z-value P(>|z|)
## responsibilityHelp ~~
## rspnsbltyPrvnt 0.678 0.047 14.367 0.000
## affect 0.278 0.029 9.499 0.000
## moralIssue 0.351 0.033 10.559 0.000
## blame 0.620 0.044 14.237 0.000
## efficacy 0.248 0.027 9.324 0.000
## responsibilityPrevent ~~
## affect 0.240 0.029 8.394 0.000
## moralIssue 0.371 0.034 10.785 0.000
## blame 0.636 0.044 14.525 0.000
## efficacy 0.226 0.026 8.760 0.000
## affect ~~
## moralIssue 0.248 0.027 9.328 0.000
## blame 0.134 0.032 4.250 0.000
## efficacy 0.309 0.029 10.568 0.000
## moralIssue ~~
## blame 0.412 0.037 11.054 0.000
## efficacy 0.225 0.025 9.074 0.000
## blame ~~
## efficacy 0.173 0.027 6.382 0.000
##
## Variances:
## Estimate Std.Err z-value P(>|z|)
## .usGovHelp 1.085 0.049 22.269 0.000
## .manufacturrHlp 0.384 0.043 8.969 0.000
## .driverHelp 1.415 0.058 24.288 0.000
## .youHelp 1.722 0.072 23.800 0.000
## .usGovPrevent 0.939 0.044 21.591 0.000
## .manufctrrPrvnt 0.348 0.040 8.752 0.000
## .driverPrevent 0.694 0.028 24.362 0.000
## .youPrevent 1.836 0.076 24.155 0.000
## .upset 0.934 0.044 21.180 0.000
## .sympathetic 0.465 0.032 14.477 0.000
## .touched 0.491 0.039 12.558 0.000
## .donatingMoral 1.225 0.054 22.490 0.000
## .takngPrctnsMrl 1.077 0.046 23.494 0.000
## .manufactrrsMrl 0.611 0.061 10.062 0.000
## .manufacturrBlm -0.818 0.855 -0.956 0.339
## .individualsBlm 0.351 0.015 24.160 0.000
## .stdyDntnEffccy 0.960 0.045 21.384 0.000
## .stdyPlcyEffccy 0.909 0.044 20.460 0.000
## .donationEffccy 0.987 0.048 20.460 0.000
## .pnshngIndvdlsE 0.947 0.043 22.144 0.000
## responsbltyHlp 0.724 0.063 11.567 0.000
## rspnsbltyPrvnt 0.781 0.062 12.506 0.000
## affect 0.674 0.058 11.628 0.000
## moralIssue 0.361 0.046 7.780 0.000
## blame 2.246 0.856 2.625 0.009
## efficacy 0.290 0.039 7.381 0.000
Merged donates equal to individual, and significantly more than structural
merged policy support significantly higher than individual and structural (which are equal)
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))
# pol_line(gjg, pol, policyDV)
# pol_line(gjg, pol, donation)
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.5338 -2.9028 -0.9028 1.5995 7.0972
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 3.4005 0.1627 20.898 <2e-16 ***
## conditionindividualScope 0.1333 0.2306 0.578 0.5632
## conditionpopulationScope -0.4977 0.2317 -2.148 0.0319 *
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 3.263 on 1189 degrees of freedom
## Multiple R-squared: 0.00684, Adjusted R-squared: 0.00517
## F-statistic: 4.095 on 2 and 1189 DF, p-value: 0.0169
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.5338 -2.9028 -0.9028 1.5995 7.0972
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 3.5338 0.1633 21.636 < 2e-16 ***
## conditionmergedScope -0.1333 0.2306 -0.578 0.56315
## conditionpopulationScope -0.6310 0.2322 -2.718 0.00666 **
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 3.263 on 1189 degrees of freedom
## Multiple R-squared: 0.00684, Adjusted R-squared: 0.00517
## F-statistic: 4.095 on 2 and 1189 DF, p-value: 0.0169
mod_policy<- lm(policyDV ~ condition + pol, data = gjg)
summary(mod_policy)
##
## Call:
## lm(formula = policyDV ~ condition + pol, data = gjg)
##
## Residuals:
## Min 1Q Median 3Q Max
## -3.8049 -1.7977 0.3256 1.6800 3.3738
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 3.89110 0.17516 22.214 < 2e-16 ***
## conditionindividualScope -0.39549 0.13849 -2.856 0.00437 **
## conditionpopulationScope -0.35445 0.13946 -2.542 0.01116 *
## pol 0.13055 0.03155 4.138 3.76e-05 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1.96 on 1186 degrees of freedom
## (2 observations deleted due to missingness)
## Multiple R-squared: 0.0227, Adjusted R-squared: 0.02023
## F-statistic: 9.182 on 3 and 1186 DF, p-value: 5.237e-06
mod_policyI <- lm(policyDV ~ condition + pol, data = gjg_I)
summary(mod_policyI)
##
## Call:
## lm(formula = policyDV ~ condition + pol, data = gjg_I)
##
## Residuals:
## Min 1Q Median 3Q Max
## -3.8049 -1.7977 0.3256 1.6800 3.3738
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 3.49560 0.17450 20.032 < 2e-16 ***
## conditionmergedScope 0.39549 0.13849 2.856 0.00437 **
## conditionpopulationScope 0.04105 0.13969 0.294 0.76893
## pol 0.13055 0.03155 4.138 3.76e-05 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1.96 on 1186 degrees of freedom
## (2 observations deleted due to missingness)
## Multiple R-squared: 0.0227, Adjusted R-squared: 0.02023
## F-statistic: 9.182 on 3 and 1186 DF, p-value: 5.237e-06
Merged & individual assign significantly more responsibility to drivers to help victims than structural
Merged & individual assign significantly more responsibility to manufacturers to help victims than structural
Merged & individual assign significantly more responsibility to us gov to help victims than structural
Merged assign marginally more responsibility to self to help victims than individual (p = 0.07)
Merged assign significantly more responsibility to drivers to prevent texting while driving than structural
Merged assign significantly more responsibility to manufacturers to prevent texting while driving than structural and individual (structural and individual difference marginal, p = 0.09)
gjg_long<-gjg %>% gather(stim, resp, "usGovHelp":"punishingIndividualsEfficacy")
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)
responsibilityPreventLong <- gjg_long %>%
filter(grepl("Prevent", stim))
facet_cooker(responsibilityPreventLong, condition, resp, coln = 2, rown = 2)
mod_usGovHelp <- lm(usGovHelp ~ condition + pol, data = gjg)
summary(mod_usGovHelp)
##
## Call:
## lm(formula = usGovHelp ~ condition + pol, data = gjg)
##
## Residuals:
## Min 1Q Median 3Q Max
## -2.65110 -1.04741 -0.03706 1.12393 2.83921
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 2.23215 0.11519 19.377 < 2e-16 ***
## conditionindividualScope 0.01035 0.09108 0.114 0.90954
## conditionpopulationScope -0.27259 0.09172 -2.972 0.00302 **
## pol 0.20123 0.02075 9.698 < 2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1.289 on 1186 degrees of freedom
## (2 observations deleted due to missingness)
## Multiple R-squared: 0.08397, Adjusted R-squared: 0.08165
## F-statistic: 36.24 on 3 and 1186 DF, p-value: < 2.2e-16
mod_usGovHelpI <- lm(usGovHelp ~ condition + pol, data = gjg_I)
summary(mod_usGovHelpI)
##
## Call:
## lm(formula = usGovHelp ~ condition + pol, data = gjg_I)
##
## Residuals:
## Min 1Q Median 3Q Max
## -2.65110 -1.04741 -0.03706 1.12393 2.83921
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 2.24250 0.11476 19.541 < 2e-16 ***
## conditionmergedScope -0.01035 0.09108 -0.114 0.90954
## conditionpopulationScope -0.28294 0.09186 -3.080 0.00212 **
## pol 0.20123 0.02075 9.698 < 2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1.289 on 1186 degrees of freedom
## (2 observations deleted due to missingness)
## Multiple R-squared: 0.08397, Adjusted R-squared: 0.08165
## F-statistic: 36.24 on 3 and 1186 DF, p-value: < 2.2e-16
mod_manufacturerHelp <- lm(manufacturerHelp ~ condition + pol, data = gjg)
summary(mod_manufacturerHelp)
##
## Call:
## lm(formula = manufacturerHelp ~ condition + pol, data = gjg)
##
## Residuals:
## Min 1Q Median 3Q Max
## -2.59134 -1.16150 -0.04121 1.15960 2.56023
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 2.74932 0.12421 22.135 < 2e-16 ***
## conditionindividualScope -0.42984 0.09820 -4.377 1.31e-05 ***
## conditionpopulationScope -0.26978 0.09889 -2.728 0.00647 **
## pol 0.12029 0.02237 5.376 9.14e-08 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1.39 on 1186 degrees of freedom
## (2 observations deleted due to missingness)
## Multiple R-squared: 0.03977, Adjusted R-squared: 0.03734
## F-statistic: 16.37 on 3 and 1186 DF, p-value: 1.975e-10
mod_manufacturerHelpI <- lm(manufacturerHelp ~ condition + pol, data = gjg_I)
summary(mod_manufacturerHelpI)
##
## Call:
## lm(formula = manufacturerHelp ~ condition + pol, data = gjg_I)
##
## Residuals:
## Min 1Q Median 3Q Max
## -2.59134 -1.16150 -0.04121 1.15960 2.56023
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 2.31948 0.12374 18.745 < 2e-16 ***
## conditionmergedScope 0.42984 0.09820 4.377 1.31e-05 ***
## conditionpopulationScope 0.16005 0.09905 1.616 0.106
## pol 0.12029 0.02237 5.376 9.14e-08 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1.39 on 1186 degrees of freedom
## (2 observations deleted due to missingness)
## Multiple R-squared: 0.03977, Adjusted R-squared: 0.03734
## F-statistic: 16.37 on 3 and 1186 DF, p-value: 1.975e-10
mod_driverHelp <- lm(driverHelp ~ condition + pol, data = gjg)
summary(mod_driverHelp)
##
## Call:
## lm(formula = driverHelp ~ condition + pol, data = gjg)
##
## Residuals:
## Min 1Q Median 3Q Max
## -3.2811 -0.8206 0.6943 0.8576 1.2040
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 4.37953 0.10717 40.865 < 2e-16 ***
## conditionindividualScope -0.11410 0.08473 -1.347 0.178
## conditionpopulationScope -0.41130 0.08533 -4.820 1.62e-06 ***
## pol -0.02461 0.01930 -1.275 0.203
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1.199 on 1186 degrees of freedom
## (2 observations deleted due to missingness)
## Multiple R-squared: 0.02134, Adjusted R-squared: 0.01887
## F-statistic: 8.622 on 3 and 1186 DF, p-value: 1.157e-05
mod_driverHelpI <- lm(driverHelp ~ condition + pol, data = gjg_I)
summary(mod_driverHelpI)
##
## Call:
## lm(formula = driverHelp ~ condition + pol, data = gjg_I)
##
## Residuals:
## Min 1Q Median 3Q Max
## -3.2811 -0.8206 0.6943 0.8576 1.2040
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 4.26543 0.10677 39.950 < 2e-16 ***
## conditionmergedScope 0.11410 0.08473 1.347 0.178380
## conditionpopulationScope -0.29720 0.08547 -3.477 0.000525 ***
## pol -0.02461 0.01930 -1.275 0.202680
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1.199 on 1186 degrees of freedom
## (2 observations deleted due to missingness)
## Multiple R-squared: 0.02134, Adjusted R-squared: 0.01887
## F-statistic: 8.622 on 3 and 1186 DF, p-value: 1.157e-05
mod_youHelp <- lm(youHelp ~ condition + pol, data = gjg)
summary(mod_youHelp)
##
## Call:
## lm(formula = youHelp ~ condition + pol, data = gjg)
##
## Residuals:
## Min 1Q Median 3Q Max
## -1.9422 -0.9148 -0.5951 1.2208 2.4049
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 2.96961 0.12810 23.181 <2e-16 ***
## conditionindividualScope -0.18254 0.10128 -1.802 0.0718 .
## conditionpopulationScope -0.07624 0.10199 -0.748 0.4549
## pol -0.02742 0.02307 -1.188 0.2349
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1.433 on 1186 degrees of freedom
## (2 observations deleted due to missingness)
## Multiple R-squared: 0.003923, Adjusted R-squared: 0.001404
## F-statistic: 1.557 on 3 and 1186 DF, p-value: 0.1981
mod_youHelpI <- lm(youHelp ~ condition + pol, data = gjg_I)
summary(mod_youHelpI)
##
## Call:
## lm(formula = youHelp ~ condition + pol, data = gjg_I)
##
## Residuals:
## Min 1Q Median 3Q Max
## -1.9422 -0.9148 -0.5951 1.2208 2.4049
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 2.78707 0.12762 21.839 <2e-16 ***
## conditionmergedScope 0.18254 0.10128 1.802 0.0718 .
## conditionpopulationScope 0.10629 0.10216 1.040 0.2983
## pol -0.02742 0.02307 -1.188 0.2349
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1.433 on 1186 degrees of freedom
## (2 observations deleted due to missingness)
## Multiple R-squared: 0.003923, Adjusted R-squared: 0.001404
## F-statistic: 1.557 on 3 and 1186 DF, p-value: 0.1981
mod_usGovPrevent <- lm(usGovPrevent ~ condition + pol, data = gjg)
summary(mod_usGovPrevent)
##
## Call:
## lm(formula = usGovPrevent ~ condition + pol, data = gjg)
##
## Residuals:
## Min 1Q Median 3Q Max
## -3.0208 -0.9502 0.1850 1.0577 2.4822
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 2.48899 0.11168 22.287 <2e-16 ***
## conditionindividualScope 0.01831 0.08830 0.207 0.8358
## conditionpopulationScope -0.18744 0.08892 -2.108 0.0352 *
## pol 0.21621 0.02012 10.748 <2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1.249 on 1186 degrees of freedom
## (2 observations deleted due to missingness)
## Multiple R-squared: 0.09472, Adjusted R-squared: 0.09243
## F-statistic: 41.37 on 3 and 1186 DF, p-value: < 2.2e-16
mod_usGovPreventI <- lm(usGovPrevent ~ condition + pol, data = gjg_I)
summary(mod_usGovPreventI)
##
## Call:
## lm(formula = usGovPrevent ~ condition + pol, data = gjg_I)
##
## Residuals:
## Min 1Q Median 3Q Max
## -3.0208 -0.9502 0.1850 1.0577 2.4822
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 2.50729 0.11126 22.536 <2e-16 ***
## conditionmergedScope -0.01831 0.08830 -0.207 0.836
## conditionpopulationScope -0.20575 0.08906 -2.310 0.021 *
## pol 0.21621 0.02012 10.748 <2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1.249 on 1186 degrees of freedom
## (2 observations deleted due to missingness)
## Multiple R-squared: 0.09472, Adjusted R-squared: 0.09243
## F-statistic: 41.37 on 3 and 1186 DF, p-value: < 2.2e-16
mod_manufacturerPrevent <- lm(manufacturerPrevent ~ condition + pol, data = gjg)
summary(mod_manufacturerPrevent)
##
## Call:
## lm(formula = manufacturerPrevent ~ condition + pol, data = gjg)
##
## Residuals:
## Min 1Q Median 3Q Max
## -2.9943 -1.0771 0.1478 1.1962 2.2071
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 2.99955 0.11817 25.384 < 2e-16 ***
## conditionindividualScope -0.34878 0.09343 -3.733 0.000198 ***
## conditionpopulationScope -0.19048 0.09408 -2.025 0.043133 *
## pol 0.14211 0.02128 6.676 3.75e-11 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1.322 on 1186 degrees of freedom
## (2 observations deleted due to missingness)
## Multiple R-squared: 0.04745, Adjusted R-squared: 0.04504
## F-statistic: 19.69 on 3 and 1186 DF, p-value: 1.837e-12
mod_manufacturerPreventI <- lm(manufacturerPrevent ~ condition + pol, data = gjg_I)
summary(mod_manufacturerPreventI)
##
## Call:
## lm(formula = manufacturerPrevent ~ condition + pol, data = gjg_I)
##
## Residuals:
## Min 1Q Median 3Q Max
## -2.9943 -1.0771 0.1478 1.1962 2.2071
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 2.65077 0.11772 22.517 < 2e-16 ***
## conditionmergedScope 0.34878 0.09343 3.733 0.000198 ***
## conditionpopulationScope 0.15831 0.09423 1.680 0.093231 .
## pol 0.14211 0.02128 6.676 3.75e-11 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1.322 on 1186 degrees of freedom
## (2 observations deleted due to missingness)
## Multiple R-squared: 0.04745, Adjusted R-squared: 0.04504
## F-statistic: 19.69 on 3 and 1186 DF, p-value: 1.837e-12
mod_driverPrevent <- lm(driverPrevent ~ condition + pol, data = gjg)
summary(mod_driverPrevent)
##
## Call:
## lm(formula = driverPrevent ~ condition + pol, data = gjg)
##
## Residuals:
## Min 1Q Median 3Q Max
## -3.6726 -0.4609 0.3942 0.4779 0.5837
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 4.73945 0.07444 63.669 < 2e-16 ***
## conditionindividualScope -0.08367 0.05886 -1.422 0.15541
## conditionpopulationScope -0.16719 0.05927 -2.821 0.00487 **
## pol -0.02228 0.01341 -1.661 0.09689 .
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.8328 on 1186 degrees of freedom
## (2 observations deleted due to missingness)
## Multiple R-squared: 0.008702, Adjusted R-squared: 0.006194
## F-statistic: 3.47 on 3 and 1186 DF, p-value: 0.01567
mod_driverPreventI <- lm(driverPrevent ~ condition + pol, data = gjg_I)
summary(mod_driverPreventI)
##
## Call:
## lm(formula = driverPrevent ~ condition + pol, data = gjg_I)
##
## Residuals:
## Min 1Q Median 3Q Max
## -3.6726 -0.4609 0.3942 0.4779 0.5837
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 4.65578 0.07416 62.780 <2e-16 ***
## conditionmergedScope 0.08367 0.05886 1.422 0.1554
## conditionpopulationScope -0.08353 0.05936 -1.407 0.1597
## pol -0.02228 0.01341 -1.661 0.0969 .
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.8328 on 1186 degrees of freedom
## (2 observations deleted due to missingness)
## Multiple R-squared: 0.008702, Adjusted R-squared: 0.006194
## F-statistic: 3.47 on 3 and 1186 DF, p-value: 0.01567
mod_youPrevent <- lm(youPrevent ~ condition + pol, data = gjg)
summary(mod_youPrevent)
##
## Call:
## lm(formula = youPrevent ~ condition + pol, data = gjg)
##
## Residuals:
## Min 1Q Median 3Q Max
## -2.7233 -0.7040 0.3325 1.3153 1.3612
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 3.683912 0.125934 29.253 <2e-16 ***
## conditionindividualScope 0.022250 0.099463 0.224 0.823
## conditionpopulationScope 0.045880 0.100218 0.458 0.647
## pol -0.006443 0.022695 -0.284 0.777
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1.407 on 1185 degrees of freedom
## (3 observations deleted due to missingness)
## Multiple R-squared: 0.0002522, Adjusted R-squared: -0.002279
## F-statistic: 0.09965 on 3 and 1185 DF, p-value: 0.9602
mod_youPreventI <- lm(youPrevent ~ condition + pol, data = gjg_I)
summary(mod_youPreventI)
##
## Call:
## lm(formula = youPrevent ~ condition + pol, data = gjg_I)
##
## Residuals:
## Min 1Q Median 3Q Max
## -2.7233 -0.7040 0.3325 1.3153 1.3612
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 3.706162 0.125460 29.540 <2e-16 ***
## conditionmergedScope -0.022250 0.099463 -0.224 0.823
## conditionpopulationScope 0.023630 0.100381 0.235 0.814
## pol -0.006443 0.022695 -0.284 0.777
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1.407 on 1185 degrees of freedom
## (3 observations deleted due to missingness)
## Multiple R-squared: 0.0002522, Adjusted R-squared: -0.002279
## F-statistic: 0.09965 on 3 and 1185 DF, p-value: 0.9602
Merged & individual feel significantly more upset than structural (individual marginally higher than merged, p = 0.054)
Merged & individual feel significantly more sympathetic than structural
Merged & individual feel significantly more touched than structural
also main effect of politics for touched (libs feel it less)
affectLong <- gjg_long %>%
filter(stim %in% c("upset", "sympathetic", "touched"))
facet_cooker(affectLong, condition, resp, coln = 2, rown = 2)
mod_upset <- lm(upset ~ condition + pol, data = gjg)
summary(mod_upset)
##
## Call:
## lm(formula = upset ~ condition + pol, data = gjg)
##
## Residuals:
## Min 1Q Median 3Q Max
## -2.4524 -0.7746 0.2254 0.8226 2.4394
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 3.03467 0.11035 27.500 < 2e-16 ***
## conditionindividualScope 0.16809 0.08725 1.926 0.0543 .
## conditionpopulationScope -0.50978 0.08786 -5.802 8.39e-09 ***
## pol 0.03567 0.01988 1.795 0.0730 .
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1.235 on 1186 degrees of freedom
## (2 observations deleted due to missingness)
## Multiple R-squared: 0.05451, Adjusted R-squared: 0.05212
## F-statistic: 22.79 on 3 and 1186 DF, p-value: 2.388e-14
mod_upsetI <- lm(upset ~ condition + pol, data = gjg_I)
summary(mod_upsetI)
##
## Call:
## lm(formula = upset ~ condition + pol, data = gjg_I)
##
## Residuals:
## Min 1Q Median 3Q Max
## -2.4524 -0.7746 0.2254 0.8226 2.4394
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 3.20276 0.10994 29.132 < 2e-16 ***
## conditionmergedScope -0.16809 0.08725 -1.926 0.0543 .
## conditionpopulationScope -0.67787 0.08800 -7.703 2.8e-14 ***
## pol 0.03567 0.01988 1.795 0.0730 .
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1.235 on 1186 degrees of freedom
## (2 observations deleted due to missingness)
## Multiple R-squared: 0.05451, Adjusted R-squared: 0.05212
## F-statistic: 22.79 on 3 and 1186 DF, p-value: 2.388e-14
mod_sympathetic <- lm(sympathetic ~ condition + pol, data = gjg)
summary(mod_sympathetic)
##
## Call:
## lm(formula = sympathetic ~ condition + pol, data = gjg)
##
## Residuals:
## Min 1Q Median 3Q Max
## -2.95326 -0.81904 0.08091 1.03162 2.04680
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 3.773471 0.098836 38.179 <2e-16 ***
## conditionindividualScope 0.126630 0.078144 1.620 0.105
## conditionpopulationScope -0.827869 0.078691 -10.521 <2e-16 ***
## pol 0.007594 0.017803 0.427 0.670
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1.106 on 1186 degrees of freedom
## (2 observations deleted due to missingness)
## Multiple R-squared: 0.1274, Adjusted R-squared: 0.1252
## F-statistic: 57.72 on 3 and 1186 DF, p-value: < 2.2e-16
mod_sympatheticI <- lm(sympathetic ~ condition + pol, data = gjg_I)
summary(mod_sympatheticI)
##
## Call:
## lm(formula = sympathetic ~ condition + pol, data = gjg_I)
##
## Residuals:
## Min 1Q Median 3Q Max
## -2.95326 -0.81904 0.08091 1.03162 2.04680
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 3.900101 0.098464 39.609 <2e-16 ***
## conditionmergedScope -0.126630 0.078144 -1.620 0.105
## conditionpopulationScope -0.954500 0.078818 -12.110 <2e-16 ***
## pol 0.007594 0.017803 0.427 0.670
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1.106 on 1186 degrees of freedom
## (2 observations deleted due to missingness)
## Multiple R-squared: 0.1274, Adjusted R-squared: 0.1252
## F-statistic: 57.72 on 3 and 1186 DF, p-value: < 2.2e-16
mod_touched <- lm(touched ~ condition + pol, data = gjg)
summary(mod_touched)
##
## Call:
## lm(formula = touched ~ condition + pol, data = gjg)
##
## Residuals:
## Min 1Q Median 3Q Max
## -2.29292 -1.10800 -0.07947 0.92053 2.71019
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 3.27876 0.11279 29.069 < 2e-16 ***
## conditionindividualScope 0.05685 0.08918 0.637 0.5239
## conditionpopulationScope -0.69012 0.08980 -7.685 3.2e-14 ***
## pol -0.04269 0.02032 -2.101 0.0358 *
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1.262 on 1186 degrees of freedom
## (2 observations deleted due to missingness)
## Multiple R-squared: 0.06933, Adjusted R-squared: 0.06698
## F-statistic: 29.45 on 3 and 1186 DF, p-value: < 2.2e-16
mod_touchedI <- lm(touched ~ condition + pol, data = gjg_I)
summary(mod_touchedI)
##
## Call:
## lm(formula = touched ~ condition + pol, data = gjg_I)
##
## Residuals:
## Min 1Q Median 3Q Max
## -2.29292 -1.10800 -0.07947 0.92053 2.71019
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 3.33561 0.11237 29.685 < 2e-16 ***
## conditionmergedScope -0.05685 0.08918 -0.637 0.5239
## conditionpopulationScope -0.74697 0.08995 -8.304 2.71e-16 ***
## pol -0.04269 0.02032 -2.101 0.0358 *
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1.262 on 1186 degrees of freedom
## (2 observations deleted due to missingness)
## Multiple R-squared: 0.06933, Adjusted R-squared: 0.06698
## F-statistic: 29.45 on 3 and 1186 DF, p-value: < 2.2e-16
Merged & individual feel significantly more efficacy in donations to resolve texting while driving than structural
Also main effect of political leaning on donation efficacy (libs feel it less)
Merged & individual feel significantly more efficacy in the donation opportunity presented in the study than structural
Strucutral feels punishing individual drivers is less efficacious than individual and structural
efficacyHelpLong <- gjg_long %>%
filter(grepl("Efficacy", stim))
facet_cooker(efficacyHelpLong, condition, resp, coln = 2, rown = 2)
mod_studyDonationEfficacy <- lm(studyDonationEfficacy ~ condition + pol, data = gjg)
summary(mod_studyDonationEfficacy)
##
## Call:
## lm(formula = studyDonationEfficacy ~ condition + pol, data = gjg)
##
## Residuals:
## Min 1Q Median 3Q Max
## -2.8288 -0.7318 0.2632 0.7229 1.7229
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 3.54776 0.09871 35.943 < 2e-16 ***
## conditionindividualScope 0.06634 0.07804 0.850 0.395432
## conditionpopulationScope -0.30136 0.07859 -3.835 0.000132 ***
## pol 0.03067 0.01778 1.725 0.084793 .
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1.104 on 1186 degrees of freedom
## (2 observations deleted due to missingness)
## Multiple R-squared: 0.0233, Adjusted R-squared: 0.02082
## F-statistic: 9.429 on 3 and 1186 DF, p-value: 3.691e-06
mod_studyDonationEfficacyI <- lm(studyDonationEfficacy ~ condition + pol, data = gjg_I)
summary(mod_studyDonationEfficacyI)
##
## Call:
## lm(formula = studyDonationEfficacy ~ condition + pol, data = gjg_I)
##
## Residuals:
## Min 1Q Median 3Q Max
## -2.8288 -0.7318 0.2632 0.7229 1.7229
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 3.61411 0.09833 36.753 < 2e-16 ***
## conditionmergedScope -0.06634 0.07804 -0.850 0.3954
## conditionpopulationScope -0.36771 0.07871 -4.671 3.33e-06 ***
## pol 0.03067 0.01778 1.725 0.0848 .
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1.104 on 1186 degrees of freedom
## (2 observations deleted due to missingness)
## Multiple R-squared: 0.0233, Adjusted R-squared: 0.02082
## F-statistic: 9.429 on 3 and 1186 DF, p-value: 3.691e-06
mod_studyPolicyEfficacy <- lm(studyPolicyEfficacy ~ condition + pol, data = gjg)
summary(mod_studyPolicyEfficacy)
##
## Call:
## lm(formula = studyPolicyEfficacy ~ condition + pol, data = gjg)
##
## Residuals:
## Min 1Q Median 3Q Max
## -2.3769 -0.3769 -0.1451 0.7487 1.9667
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 3.22042 0.10008 32.178 < 2e-16 ***
## conditionindividualScope -0.03619 0.07918 -0.457 0.64771
## conditionpopulationScope -0.20945 0.07968 -2.629 0.00869 **
## pol 0.02235 0.01803 1.240 0.21529
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1.12 on 1185 degrees of freedom
## (3 observations deleted due to missingness)
## Multiple R-squared: 0.008077, Adjusted R-squared: 0.005566
## F-statistic: 3.217 on 3 and 1185 DF, p-value: 0.02214
mod_studyPolicyEfficacyI <- lm(studyPolicyEfficacy ~ condition + pol, data = gjg_I)
summary(mod_studyPolicyEfficacyI)
##
## Call:
## lm(formula = studyPolicyEfficacy ~ condition + pol, data = gjg_I)
##
## Residuals:
## Min 1Q Median 3Q Max
## -2.3769 -0.3769 -0.1451 0.7487 1.9667
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 3.18423 0.09973 31.929 <2e-16 ***
## conditionmergedScope 0.03619 0.07918 0.457 0.6477
## conditionpopulationScope -0.17326 0.07986 -2.170 0.0302 *
## pol 0.02235 0.01803 1.240 0.2153
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1.12 on 1185 degrees of freedom
## (3 observations deleted due to missingness)
## Multiple R-squared: 0.008077, Adjusted R-squared: 0.005566
## F-statistic: 3.217 on 3 and 1185 DF, p-value: 0.02214
mod_donationEfficacy <- lm(donationEfficacy ~ condition + pol, data = gjg)
summary(mod_donationEfficacy)
##
## Call:
## lm(formula = donationEfficacy ~ condition + pol, data = gjg)
##
## Residuals:
## Min 1Q Median 3Q Max
## -1.1596 -0.9047 -0.6904 0.8833 3.3096
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 2.20246 0.10410 21.158 <2e-16 ***
## conditionindividualScope -0.06905 0.08230 -0.839 0.4017
## conditionpopulationScope -0.21200 0.08288 -2.558 0.0107 *
## pol -0.04287 0.01875 -2.286 0.0224 *
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1.165 on 1186 degrees of freedom
## (2 observations deleted due to missingness)
## Multiple R-squared: 0.009685, Adjusted R-squared: 0.00718
## F-statistic: 3.866 on 3 and 1186 DF, p-value: 0.009105
mod_donationEfficacyI <- lm(donationEfficacy ~ condition + pol, data = gjg_I)
summary(mod_donationEfficacyI)
##
## Call:
## lm(formula = donationEfficacy ~ condition + pol, data = gjg_I)
##
## Residuals:
## Min 1Q Median 3Q Max
## -1.1596 -0.9047 -0.6904 0.8833 3.3096
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 2.13341 0.10371 20.572 <2e-16 ***
## conditionmergedScope 0.06905 0.08230 0.839 0.4017
## conditionpopulationScope -0.14296 0.08301 -1.722 0.0853 .
## pol -0.04287 0.01875 -2.286 0.0224 *
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1.165 on 1186 degrees of freedom
## (2 observations deleted due to missingness)
## Multiple R-squared: 0.009685, Adjusted R-squared: 0.00718
## F-statistic: 3.866 on 3 and 1186 DF, p-value: 0.009105
mod_punishingIndividualsEfficacy <- lm(punishingIndividualsEfficacy ~ condition + pol, data = gjg)
summary(mod_punishingIndividualsEfficacy)
##
## Call:
## lm(formula = punishingIndividualsEfficacy ~ condition + pol,
## data = gjg)
##
## Residuals:
## Min 1Q Median 3Q Max
## -2.8091 -0.7571 0.2224 1.1909 1.5213
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 3.824880 0.095903 39.883 < 2e-16 ***
## conditionindividualScope -0.051976 0.075826 -0.685 0.493188
## conditionpopulationScope -0.291041 0.076356 -3.812 0.000145 ***
## pol -0.007884 0.017275 -0.456 0.648179
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1.073 on 1186 degrees of freedom
## (2 observations deleted due to missingness)
## Multiple R-squared: 0.01375, Adjusted R-squared: 0.01126
## F-statistic: 5.512 on 3 and 1186 DF, p-value: 0.0009267
mod_punishingIndividualsEfficacyI <- lm(punishingIndividualsEfficacy ~ condition + pol, data = gjg_I)
summary(mod_punishingIndividualsEfficacyI)
##
## Call:
## lm(formula = punishingIndividualsEfficacy ~ condition + pol,
## data = gjg_I)
##
## Residuals:
## Min 1Q Median 3Q Max
## -2.8091 -0.7571 0.2224 1.1909 1.5213
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 3.772905 0.095543 39.489 < 2e-16 ***
## conditionmergedScope 0.051976 0.075826 0.685 0.49319
## conditionpopulationScope -0.239065 0.076480 -3.126 0.00182 **
## pol -0.007884 0.017275 -0.456 0.64818
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1.073 on 1186 degrees of freedom
## (2 observations deleted due to missingness)
## Multiple R-squared: 0.01375, Adjusted R-squared: 0.01126
## F-statistic: 5.512 on 3 and 1186 DF, p-value: 0.0009267
Individual thinks donating to texting and driving victims is significantly more a moral issue than structural (marginal between structural and merged, p = 0.08)
Individual thinks drivers taking precautions to not text while driving is significantly more a moral issue than structural (marginal between structural and merged, p = 0.059)
Merged thinks manufacturers preventing texting while driving is significantly more a moral issue than structural and individual
Main effect of political leaning on thinking manufacturers preventing texting while driving is a moral issue than structural and individual (libs moreso)
Merged and Structural assign significantly more blame to manufacturers than individual
Merged and Structural assign significantly more blame to drivers than structural
moralIssueLong <- gjg_long %>%
filter(grepl("Moral", stim))
facet_cooker(moralIssueLong, condition, resp, coln = 2, rown = 2)
blameLong <- gjg_long %>%
filter(grepl("Blame", stim))
facet_cooker(blameLong, condition, resp, coln = 2, rown = 2)
mod_donatingMoral <- lm(donatingMoral ~ condition + pol, data = gjg)
summary(mod_donatingMoral)
##
## Call:
## lm(formula = donatingMoral ~ condition + pol, data = gjg)
##
## Residuals:
## Min 1Q Median 3Q Max
## -1.8292 -0.8169 0.1954 1.1872 2.3960
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 2.787559 0.112529 24.772 <2e-16 ***
## conditionindividualScope 0.045744 0.088971 0.514 0.6072
## conditionpopulationScope -0.154884 0.089594 -1.729 0.0841 .
## pol -0.004103 0.020269 -0.202 0.8396
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1.259 on 1186 degrees of freedom
## (2 observations deleted due to missingness)
## Multiple R-squared: 0.004607, Adjusted R-squared: 0.002089
## F-statistic: 1.83 on 3 and 1186 DF, p-value: 0.1399
mod_donatingMoralI <- lm(donatingMoral ~ condition + pol, data = gjg_I)
summary(mod_donatingMoralI)
##
## Call:
## lm(formula = donatingMoral ~ condition + pol, data = gjg_I)
##
## Residuals:
## Min 1Q Median 3Q Max
## -1.8292 -0.8169 0.1954 1.1872 2.3960
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 2.833303 0.112107 25.273 <2e-16 ***
## conditionmergedScope -0.045744 0.088971 -0.514 0.6072
## conditionpopulationScope -0.200628 0.089738 -2.236 0.0256 *
## pol -0.004103 0.020269 -0.202 0.8396
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1.259 on 1186 degrees of freedom
## (2 observations deleted due to missingness)
## Multiple R-squared: 0.004607, Adjusted R-squared: 0.002089
## F-statistic: 1.83 on 3 and 1186 DF, p-value: 0.1399
mod_takingPrecautionsMoral <- lm(takingPrecautionsMoral ~ condition + pol, data = gjg)
summary(mod_takingPrecautionsMoral)
##
## Call:
## lm(formula = takingPrecautionsMoral ~ condition + pol, data = gjg)
##
## Residuals:
## Min 1Q Median 3Q Max
## -3.0863 -0.8591 0.0931 0.9615 1.1888
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 3.94396 0.09893 39.865 <2e-16 ***
## conditionindividualScope 0.03073 0.07822 0.393 0.6945
## conditionpopulationScope -0.14867 0.07877 -1.887 0.0594 .
## pol 0.01594 0.01782 0.895 0.3712
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1.107 on 1186 degrees of freedom
## (2 observations deleted due to missingness)
## Multiple R-squared: 0.005741, Adjusted R-squared: 0.003226
## F-statistic: 2.283 on 3 and 1186 DF, p-value: 0.07747
mod_takingPrecautionsMoralI <- lm(takingPrecautionsMoral ~ condition + pol, data = gjg_I)
summary(mod_takingPrecautionsMoralI)
##
## Call:
## lm(formula = takingPrecautionsMoral ~ condition + pol, data = gjg_I)
##
## Residuals:
## Min 1Q Median 3Q Max
## -3.0863 -0.8591 0.0931 0.9615 1.1888
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 3.97470 0.09856 40.327 <2e-16 ***
## conditionmergedScope -0.03073 0.07822 -0.393 0.6945
## conditionpopulationScope -0.17940 0.07890 -2.274 0.0232 *
## pol 0.01594 0.01782 0.895 0.3712
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1.107 on 1186 degrees of freedom
## (2 observations deleted due to missingness)
## Multiple R-squared: 0.005741, Adjusted R-squared: 0.003226
## F-statistic: 2.283 on 3 and 1186 DF, p-value: 0.07747
mod_manufacturersMoral <- lm(manufacturersMoral ~ condition + pol, data = gjg)
summary(mod_manufacturersMoral)
##
## Call:
## lm(formula = manufacturersMoral ~ condition + pol, data = gjg)
##
## Residuals:
## Min 1Q Median 3Q Max
## -2.30707 -1.02450 0.04355 1.00662 2.43567
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 2.75811 0.11623 23.730 < 2e-16 ***
## conditionindividualScope -0.27220 0.09189 -2.962 0.003116 **
## conditionpopulationScope -0.18718 0.09254 -2.023 0.043326 *
## pol 0.07842 0.02094 3.746 0.000188 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1.3 on 1186 degrees of freedom
## (2 observations deleted due to missingness)
## Multiple R-squared: 0.01949, Adjusted R-squared: 0.01701
## F-statistic: 7.858 on 3 and 1186 DF, p-value: 3.409e-05
mod_manufacturersMoralI <- lm(manufacturersMoral ~ condition + pol, data = gjg_I)
summary(mod_manufacturersMoralI)
##
## Call:
## lm(formula = manufacturersMoral ~ condition + pol, data = gjg_I)
##
## Residuals:
## Min 1Q Median 3Q Max
## -2.30707 -1.02450 0.04355 1.00662 2.43567
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 2.48590 0.11579 21.469 < 2e-16 ***
## conditionmergedScope 0.27220 0.09189 2.962 0.003116 **
## conditionpopulationScope 0.08502 0.09269 0.917 0.359165
## pol 0.07842 0.02094 3.746 0.000188 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1.3 on 1186 degrees of freedom
## (2 observations deleted due to missingness)
## Multiple R-squared: 0.01949, Adjusted R-squared: 0.01701
## F-statistic: 7.858 on 3 and 1186 DF, p-value: 3.409e-05
mod_manufacturerBlame <- lm(manufacturerBlame ~ condition + pol, data = gjg)
summary(mod_manufacturerBlame)
##
## Call:
## lm(formula = manufacturerBlame ~ condition + pol, data = gjg)
##
## Residuals:
## Min 1Q Median 3Q Max
## -1.6809 -0.9879 -0.1938 0.7379 3.3296
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 1.94804 0.10399 18.734 < 2e-16 ***
## conditionindividualScope -0.48704 0.08222 -5.924 4.12e-09 ***
## conditionpopulationScope -0.06483 0.08279 -0.783 0.434
## pol 0.10469 0.01873 5.589 2.83e-08 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1.163 on 1186 degrees of freedom
## (2 observations deleted due to missingness)
## Multiple R-squared: 0.05724, Adjusted R-squared: 0.05486
## F-statistic: 24 on 3 and 1186 DF, p-value: 4.399e-15
mod_manufacturerBlameI <- lm(manufacturerBlame ~ condition + pol, data = gjg_I)
summary(mod_manufacturerBlameI)
##
## Call:
## lm(formula = manufacturerBlame ~ condition + pol, data = gjg_I)
##
## Residuals:
## Min 1Q Median 3Q Max
## -1.6809 -0.9879 -0.1938 0.7379 3.3296
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 1.46100 0.10360 14.103 < 2e-16 ***
## conditionmergedScope 0.48704 0.08222 5.924 4.12e-09 ***
## conditionpopulationScope 0.42221 0.08293 5.091 4.13e-07 ***
## pol 0.10469 0.01873 5.589 2.83e-08 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1.163 on 1186 degrees of freedom
## (2 observations deleted due to missingness)
## Multiple R-squared: 0.05724, Adjusted R-squared: 0.05486
## F-statistic: 24 on 3 and 1186 DF, p-value: 4.399e-15
mod_individualsBlame <- lm(individualsBlame ~ condition + pol, data = gjg)
summary(mod_individualsBlame)
##
## Call:
## lm(formula = individualsBlame ~ condition + pol, data = gjg)
##
## Residuals:
## Min 1Q Median 3Q Max
## -3.8019 0.1918 0.2233 0.2887 0.4017
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 4.755440 0.053040 89.657 < 2e-16 ***
## conditionindividualScope 0.065403 0.041936 1.560 0.11912
## conditionpopulationScope -0.112931 0.042230 -2.674 0.00759 **
## pol -0.006310 0.009554 -0.661 0.50906
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.5934 on 1186 degrees of freedom
## (2 observations deleted due to missingness)
## Multiple R-squared: 0.01531, Adjusted R-squared: 0.01282
## F-statistic: 6.148 on 3 and 1186 DF, p-value: 0.0003798
mod_individualsBlameI <- lm(individualsBlame ~ condition + pol, data = gjg_I)
summary(mod_individualsBlameI)
##
## Call:
## lm(formula = individualsBlame ~ condition + pol, data = gjg_I)
##
## Residuals:
## Min 1Q Median 3Q Max
## -3.8019 0.1918 0.2233 0.2887 0.4017
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 4.820844 0.052841 91.233 < 2e-16 ***
## conditionmergedScope -0.065403 0.041936 -1.560 0.119
## conditionpopulationScope -0.178335 0.042298 -4.216 2.67e-05 ***
## pol -0.006310 0.009554 -0.661 0.509
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.5934 on 1186 degrees of freedom
## (2 observations deleted due to missingness)
## Multiple R-squared: 0.01531, Adjusted R-squared: 0.01282
## F-statistic: 6.148 on 3 and 1186 DF, p-value: 0.0003798
bonus_gjg <- gjg_raw %>% filter(attentionCheck == 4, Finished == 1, consent == 8)
bonus_gjg <- bonus_gjg %>%
dplyr::select(PROLIFIC_PID, donation)
view(bonus_gjg)
winners_bonus_gjg <- bonus_gjg[seq(20, nrow(bonus_gjg), 20), ]
# write.csv(winners_bonus_gjg, "BONUS_scope_project_study_1_texting.csv", row.names = FALSE)