2 Study 2

Data_Study2_Wide <- subset(Data_Meta_Raw.wide, Study == 2)

2.1 Data analysis

Run linear regressions for each sleep variable (IV) on endorsement of moral principles (DV)

QualCroLMS2<-lm(Moral_SCA~SleepQualCro, Data_Study2_Wide)
QualAcuLMS2<-lm(Moral_SCA~SleepQualAcu,Data_Study2_Wide)
QuantCroLMS2<-lm(Moral_SCA~SleepQuantCro, Data_Study2_Wide)
QuantAcuLMS2<-lm(Moral_SCA~SleepQuantAcu, Data_Study2_Wide)

Extract coefficients from linear regression models

results_S2 <- rbind(
  tidy(QualCroLMS2)[2,],
  tidy(QualAcuLMS2)[2,],
  tidy(QuantCroLMS2)[2,],
  tidy(QuantAcuLMS2)[2,]) %>%
  mutate(
    p.value = case_when(
      p.value*4 < 1 ~ p.value*4,
      p.value*4 >= 1 ~ 1))

Prepare data for plots

Data_PlotS2<- Data_Study2_Wide %>%
  pivot_longer(
    cols=c(SleepQualCro, SleepQualAcu, SleepQuantCro, SleepQuantAcu),
    names_to="SleepType") %>%
  rename("SleepValue"=value) %>%
  mutate(
    SleepLength=case_when(
      SleepType=="SleepQualCro" | SleepType=="SleepQuantCro"~"Chronic",
      SleepType=="SleepQualAcu" | SleepType=="SleepQuantAcu"~"Acute"),
    SleepQuanthist=case_when(
      SleepType=="SleepQualCro" | SleepType=="SleepQualAcu"~"Sleep Quality",
      SleepType=="SleepQuantCro" | SleepType=="SleepQuantAcu"~"Sleep Quantity"))

Data_PlotS2$SleepType<-dplyr::recode(Data_PlotS2$SleepType, 
        "SleepQualCro" = "Quality of Chronic Sleep",
        "SleepQualAcu" = "Quality of Acute Sleep",
        "SleepQuantCro" = "Quantity of Chronic Sleep",
        "SleepQuantAcu" = "Quantity of Acute Sleep")

2.2 Summary of Study 2 results

Put results in a table

gt(results_S2) %>% 
  fmt_number(
    columns = 2:5,
    decimals = 2)
term estimate std.error statistic p.value
SleepQualCro 0.11 0.20 0.57 1.00
SleepQualAcu 0.17 0.20 0.88 1.00
SleepQuantCro 0.30 0.44 0.68 1.00
SleepQuantAcu 0.14 0.34 0.41 1.00

2.3 Plot Study 2 Results

Plot distribution for each sleep indicator

DistQualityS2<-ggplot(Data_PlotS2, aes(x=SleepValue, fill=factor(SleepLength))) + 
  geom_density(alpha=0.5, size=0.5,adjust = 2) + 
  scale_fill_manual(values=c("#193B94", "#BDCAEE", "#193B94", "#BDCAEE")) +
  theme_bw() + 
  ylab("Density") + xlab("") +
  facet_wrap(~factor(SleepQuanthist), scale="free_x") + 
  guides(fill=guide_legend("Sleep Length")) +
  theme(
    axis.title.y = element_text(size = 11, hjust = 0.5, face="bold"),
    axis.title.x = element_text(face="bold", size = 11, hjust = 0.5),
    legend.position="top",
    legend.title = element_text(colour="black", size=10, face="bold")) 
DistQualityS2

Plot distribution for the scores to the moral scale

DistMoralS2<-ggplot(Data_Study2_Raw, aes(x=Moral_SCA, fill="#193B94")) + 
  geom_density(alpha=0.5, size=0.5,adjust = 2) + 
  theme_bw() + 
  ylab("Density") + xlab("Moral Scale") +
  guides(fill="none") +
  theme(
    axis.title.y = element_text(size = 11, hjust = 0.5, face="bold"),
    axis.title.x = element_text(face="bold", size = 11, hjust = 0.5))
  
DistMoralS2

Scatterplots

ggplot(Data_PlotS2, aes(x=SleepValue, y=Moral_SCA)) + 
       geom_jitter(alpha=0.6, color="#545454", size=1.2) + 
       geom_smooth(method="lm")+
       facet_wrap(~factor(SleepType), scales="free_x") +
       theme_bw() + ylab("Utilitirianism") + xlab("") + 
       theme(axis.title.y = element_text(size = 11, hjust = 0.5, face="bold"), 
             axis.title.x = element_text(face="bold", size = 11, hjust = 0.5)) +
       guides(size=FALSE, colour=FALSE, fill=FALSE)
## `geom_smooth()` using formula 'y ~ x'