MHA data analysis 02 09

Author

Fred


Read in the data:

library(tidyverse)
── Attaching packages ─────────────────────────────────────── tidyverse 1.3.2 ──
✔ ggplot2 3.4.0     ✔ purrr   0.3.4
✔ tibble  3.1.7     ✔ dplyr   1.1.0
✔ tidyr   1.2.0     ✔ stringr 1.4.0
✔ readr   2.1.4     ✔ forcats 0.5.1
── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
✖ dplyr::filter() masks stats::filter()
✖ dplyr::lag()    masks stats::lag()
library(VGAM)
Loading required package: stats4
Loading required package: splines
df <- read.csv('r-34 data downloader/output_data_.csv')
# df <- df |> filter(is.na(reward) == FALSE)
#head(df)

Calculate Missing Values:

df |> 
  filter(mooclet_id %in% c(583,584,585,586,587,588,590)) |>
  group_by(mooclet_id) |>
  summarise(total_arm_assignments = length(reward),
            total_missing_value = sum(is.na(reward)),
            missing_ratio = sum(is.na(reward))/length(reward))
# A tibble: 7 × 4
  mooclet_id total_arm_assignments total_missing_value missing_ratio
       <int>                 <int>               <int>         <dbl>
1        583                   207                 136        0.657 
2        584                   207                 136        0.657 
3        585                   204                 135        0.662 
4        586                   425                  24        0.0565
5        587                   425                   8        0.0188
6        588                   690                   8        0.0116
7        590                   425                  12        0.0282

Model 1: Modular bandits data are fitting on LM since the reward is multi-class,

could use multi-nomial logistic model, too

B1 model: fitted

# df |> 
#   filter(mooclet_id == 583) |>
#   lm(formula = reward ~ as.factor(arm) +
#        context_is_weekday*as.factor(arm) + 
#        context_is_preferred_time*as.factor(arm) + 
#        context_time_of_day_period*as.factor(arm) + 
#        context_active_last_48*as.factor(arm) + 
#        context_study_period*as.factor(arm) + 
#        context_k10_response_sum_class*as.factor(arm)) |>
#   summary()

df |> 
  filter(mooclet_id == 583) |>
  lm(formula = reward ~ as.factor(arm) +
       context_time_of_day_period*as.factor(arm) + 
       context_active_last_48*as.factor(arm) + 
       context_study_period*as.factor(arm)) |>
  summary()

Call:
lm(formula = reward ~ as.factor(arm) + context_time_of_day_period * 
    as.factor(arm) + context_active_last_48 * as.factor(arm) + 
    context_study_period * as.factor(arm), data = filter(df, 
    mooclet_id == 583))

Residuals:
     Min       1Q   Median       3Q      Max 
-0.49690 -0.15789  0.01316  0.17786  0.61723 

Coefficients:
                                                                                     Estimate
(Intercept)                                                                          -0.14087
as.factor(arm)B1 Modular Link Clinical TrialZzgot_no_link                             1.62975
context_time_of_day_period                                                            0.07895
context_active_last_48                                                                0.15789
context_study_period                                                                  0.64087
as.factor(arm)B1 Modular Link Clinical TrialZzgot_no_link:context_time_of_day_period -0.36299
as.factor(arm)B1 Modular Link Clinical TrialZzgot_no_link:context_active_last_48     -0.73334
as.factor(arm)B1 Modular Link Clinical TrialZzgot_no_link:context_study_period       -1.23217
                                                                                     Std. Error
(Intercept)                                                                             0.35787
as.factor(arm)B1 Modular Link Clinical TrialZzgot_no_link                               0.47549
context_time_of_day_period                                                              0.12849
context_active_last_48                                                                  0.25699
context_study_period                                                                    0.25799
as.factor(arm)B1 Modular Link Clinical TrialZzgot_no_link:context_time_of_day_period    0.17552
as.factor(arm)B1 Modular Link Clinical TrialZzgot_no_link:context_active_last_48        0.36427
as.factor(arm)B1 Modular Link Clinical TrialZzgot_no_link:context_study_period          0.37487
                                                                                     t value
(Intercept)                                                                           -0.394
as.factor(arm)B1 Modular Link Clinical TrialZzgot_no_link                              3.428
context_time_of_day_period                                                             0.614
context_active_last_48                                                                 0.614
context_study_period                                                                   2.484
as.factor(arm)B1 Modular Link Clinical TrialZzgot_no_link:context_time_of_day_period  -2.068
as.factor(arm)B1 Modular Link Clinical TrialZzgot_no_link:context_active_last_48      -2.013
as.factor(arm)B1 Modular Link Clinical TrialZzgot_no_link:context_study_period        -3.287
                                                                                     Pr(>|t|)
(Intercept)                                                                           0.69523
as.factor(arm)B1 Modular Link Clinical TrialZzgot_no_link                             0.00110
context_time_of_day_period                                                            0.54123
context_active_last_48                                                                0.54123
context_study_period                                                                  0.01575
as.factor(arm)B1 Modular Link Clinical TrialZzgot_no_link:context_time_of_day_period  0.04287
as.factor(arm)B1 Modular Link Clinical TrialZzgot_no_link:context_active_last_48      0.04851
as.factor(arm)B1 Modular Link Clinical TrialZzgot_no_link:context_study_period        0.00168
                                                                                       
(Intercept)                                                                            
as.factor(arm)B1 Modular Link Clinical TrialZzgot_no_link                            **
context_time_of_day_period                                                             
context_active_last_48                                                                 
context_study_period                                                                 * 
as.factor(arm)B1 Modular Link Clinical TrialZzgot_no_link:context_time_of_day_period * 
as.factor(arm)B1 Modular Link Clinical TrialZzgot_no_link:context_active_last_48     * 
as.factor(arm)B1 Modular Link Clinical TrialZzgot_no_link:context_study_period       **
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 0.248 on 61 degrees of freedom
  (138 observations deleted due to missingness)
Multiple R-squared:  0.3908,    Adjusted R-squared:  0.3209 
F-statistic: 5.591 on 7 and 61 DF,  p-value: 5.227e-05

B2 model: fitted:

df |> 
  filter(mooclet_id == 584) |>
  lm(formula = reward ~ as.factor(arm) +
       context_is_preferred_time*as.factor(arm) +
       context_active_last_48*as.factor(arm) + 
       context_study_period*as.factor(arm) + 
       context_k10_response_sum_class*as.factor(arm)) |>
  summary()

Call:
lm(formula = reward ~ as.factor(arm) + context_is_preferred_time * 
    as.factor(arm) + context_active_last_48 * as.factor(arm) + 
    context_study_period * as.factor(arm) + context_k10_response_sum_class * 
    as.factor(arm), data = filter(df, mooclet_id == 584))

Residuals:
     Min       1Q   Median       3Q      Max 
-0.53610 -0.14999 -0.01732  0.16865  0.58890 

Coefficients:
                                                                                                    Estimate
(Intercept)                                                                                          1.06035
as.factor(arm)B2 Modular Rationale Clinical TrialZzmodular_rationale                                -1.13206
context_is_preferred_time                                                                            0.36893
context_active_last_48                                                                              -0.84154
context_study_period                                                                                -0.02541
context_k10_response_sum_class                                                                      -0.04341
as.factor(arm)B2 Modular Rationale Clinical TrialZzmodular_rationale:context_is_preferred_time      -0.30797
as.factor(arm)B2 Modular Rationale Clinical TrialZzmodular_rationale:context_active_last_48          0.98386
as.factor(arm)B2 Modular Rationale Clinical TrialZzmodular_rationale:context_study_period            0.21753
as.factor(arm)B2 Modular Rationale Clinical TrialZzmodular_rationale:context_k10_response_sum_class  0.36204
                                                                                                    Std. Error
(Intercept)                                                                                            0.47561
as.factor(arm)B2 Modular Rationale Clinical TrialZzmodular_rationale                                   0.63553
context_is_preferred_time                                                                              0.11250
context_active_last_48                                                                                 0.27389
context_study_period                                                                                   0.32696
context_k10_response_sum_class                                                                         0.35721
as.factor(arm)B2 Modular Rationale Clinical TrialZzmodular_rationale:context_is_preferred_time         0.13632
as.factor(arm)B2 Modular Rationale Clinical TrialZzmodular_rationale:context_active_last_48            0.38074
as.factor(arm)B2 Modular Rationale Clinical TrialZzmodular_rationale:context_study_period              0.40029
as.factor(arm)B2 Modular Rationale Clinical TrialZzmodular_rationale:context_k10_response_sum_class    0.42565
                                                                                                    t value
(Intercept)                                                                                           2.229
as.factor(arm)B2 Modular Rationale Clinical TrialZzmodular_rationale                                 -1.781
context_is_preferred_time                                                                             3.279
context_active_last_48                                                                               -3.073
context_study_period                                                                                 -0.078
context_k10_response_sum_class                                                                       -0.122
as.factor(arm)B2 Modular Rationale Clinical TrialZzmodular_rationale:context_is_preferred_time       -2.259
as.factor(arm)B2 Modular Rationale Clinical TrialZzmodular_rationale:context_active_last_48           2.584
as.factor(arm)B2 Modular Rationale Clinical TrialZzmodular_rationale:context_study_period             0.543
as.factor(arm)B2 Modular Rationale Clinical TrialZzmodular_rationale:context_k10_response_sum_class   0.851
                                                                                                    Pr(>|t|)
(Intercept)                                                                                          0.02948
as.factor(arm)B2 Modular Rationale Clinical TrialZzmodular_rationale                                 0.07985
context_is_preferred_time                                                                            0.00172
context_active_last_48                                                                               0.00317
context_study_period                                                                                 0.93831
context_k10_response_sum_class                                                                       0.90368
as.factor(arm)B2 Modular Rationale Clinical TrialZzmodular_rationale:context_is_preferred_time       0.02745
as.factor(arm)B2 Modular Rationale Clinical TrialZzmodular_rationale:context_active_last_48          0.01217
as.factor(arm)B2 Modular Rationale Clinical TrialZzmodular_rationale:context_study_period            0.58882
as.factor(arm)B2 Modular Rationale Clinical TrialZzmodular_rationale:context_k10_response_sum_class  0.39833
                                                                                                      
(Intercept)                                                                                         * 
as.factor(arm)B2 Modular Rationale Clinical TrialZzmodular_rationale                                . 
context_is_preferred_time                                                                           **
context_active_last_48                                                                              **
context_study_period                                                                                  
context_k10_response_sum_class                                                                        
as.factor(arm)B2 Modular Rationale Clinical TrialZzmodular_rationale:context_is_preferred_time      * 
as.factor(arm)B2 Modular Rationale Clinical TrialZzmodular_rationale:context_active_last_48         * 
as.factor(arm)B2 Modular Rationale Clinical TrialZzmodular_rationale:context_study_period             
as.factor(arm)B2 Modular Rationale Clinical TrialZzmodular_rationale:context_k10_response_sum_class   
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 0.2532 on 61 degrees of freedom
  (136 observations deleted due to missingness)
Multiple R-squared:  0.3653,    Adjusted R-squared:  0.2717 
F-statistic: 3.901 on 9 and 61 DF,  p-value: 0.0005906

For B3:

df |> 
  filter(mooclet_id == 585) |>
  lm(formula = reward ~ as.factor(arm) +
       context_is_preferred_time*as.factor(arm) + 
       context_time_of_day_period*as.factor(arm) + 
       context_active_last_48*as.factor(arm) + 
       context_study_period*as.factor(arm)) |>
  summary()

Call:
lm(formula = reward ~ as.factor(arm) + context_is_preferred_time * 
    as.factor(arm) + context_time_of_day_period * as.factor(arm) + 
    context_active_last_48 * as.factor(arm) + context_study_period * 
    as.factor(arm), data = filter(df, mooclet_id == 585))

Residuals:
     Min       1Q   Median       3Q      Max 
-0.50669 -0.17131  0.00817  0.11713  0.54540 

Coefficients: (3 not defined because of singularities)
                                                                                                    Estimate
(Intercept)                                                                                          0.89597
as.factor(arm)B3 Modular Interaction Clinical TrialZzreflection_question                            -0.21352
as.factor(arm)B3 Modular Interaction Clinical TrialZzshort_prompt                                   -0.21263
as.factor(arm)B3 Modular Interaction Clinical TrialZzstories                                        -0.90124
context_is_preferred_time                                                                            0.34884
context_time_of_day_period                                                                          -0.11860
context_active_last_48                                                                              -0.27678
context_study_period                                                                                -0.46134
as.factor(arm)B3 Modular Interaction Clinical TrialZzreflection_question:context_is_preferred_time  -0.31033
as.factor(arm)B3 Modular Interaction Clinical TrialZzshort_prompt:context_is_preferred_time         -0.11867
as.factor(arm)B3 Modular Interaction Clinical TrialZzstories:context_is_preferred_time              -0.07961
as.factor(arm)B3 Modular Interaction Clinical TrialZzreflection_question:context_time_of_day_period  0.33017
as.factor(arm)B3 Modular Interaction Clinical TrialZzshort_prompt:context_time_of_day_period        -0.20805
as.factor(arm)B3 Modular Interaction Clinical TrialZzstories:context_time_of_day_period             -0.34293
as.factor(arm)B3 Modular Interaction Clinical TrialZzreflection_question:context_active_last_48           NA
as.factor(arm)B3 Modular Interaction Clinical TrialZzshort_prompt:context_active_last_48                  NA
as.factor(arm)B3 Modular Interaction Clinical TrialZzstories:context_active_last_48                       NA
as.factor(arm)B3 Modular Interaction Clinical TrialZzreflection_question:context_study_period        0.47698
as.factor(arm)B3 Modular Interaction Clinical TrialZzshort_prompt:context_study_period               0.50939
as.factor(arm)B3 Modular Interaction Clinical TrialZzstories:context_study_period                    1.23057
                                                                                                    Std. Error
(Intercept)                                                                                            0.45008
as.factor(arm)B3 Modular Interaction Clinical TrialZzreflection_question                               0.50948
as.factor(arm)B3 Modular Interaction Clinical TrialZzshort_prompt                                      0.61606
as.factor(arm)B3 Modular Interaction Clinical TrialZzstories                                           0.82195
context_is_preferred_time                                                                              0.15691
context_time_of_day_period                                                                             0.22150
context_active_last_48                                                                                 0.20196
context_study_period                                                                                   0.42383
as.factor(arm)B3 Modular Interaction Clinical TrialZzreflection_question:context_is_preferred_time     0.19524
as.factor(arm)B3 Modular Interaction Clinical TrialZzshort_prompt:context_is_preferred_time            0.22693
as.factor(arm)B3 Modular Interaction Clinical TrialZzstories:context_is_preferred_time                 0.40524
as.factor(arm)B3 Modular Interaction Clinical TrialZzreflection_question:context_time_of_day_period    0.27461
as.factor(arm)B3 Modular Interaction Clinical TrialZzshort_prompt:context_time_of_day_period           0.35918
as.factor(arm)B3 Modular Interaction Clinical TrialZzstories:context_time_of_day_period                0.39213
as.factor(arm)B3 Modular Interaction Clinical TrialZzreflection_question:context_active_last_48             NA
as.factor(arm)B3 Modular Interaction Clinical TrialZzshort_prompt:context_active_last_48                    NA
as.factor(arm)B3 Modular Interaction Clinical TrialZzstories:context_active_last_48                         NA
as.factor(arm)B3 Modular Interaction Clinical TrialZzreflection_question:context_study_period          0.52645
as.factor(arm)B3 Modular Interaction Clinical TrialZzshort_prompt:context_study_period                 0.63553
as.factor(arm)B3 Modular Interaction Clinical TrialZzstories:context_study_period                      0.87917
                                                                                                    t value
(Intercept)                                                                                           1.991
as.factor(arm)B3 Modular Interaction Clinical TrialZzreflection_question                             -0.419
as.factor(arm)B3 Modular Interaction Clinical TrialZzshort_prompt                                    -0.345
as.factor(arm)B3 Modular Interaction Clinical TrialZzstories                                         -1.096
context_is_preferred_time                                                                             2.223
context_time_of_day_period                                                                           -0.535
context_active_last_48                                                                               -1.371
context_study_period                                                                                 -1.088
as.factor(arm)B3 Modular Interaction Clinical TrialZzreflection_question:context_is_preferred_time   -1.589
as.factor(arm)B3 Modular Interaction Clinical TrialZzshort_prompt:context_is_preferred_time          -0.523
as.factor(arm)B3 Modular Interaction Clinical TrialZzstories:context_is_preferred_time               -0.196
as.factor(arm)B3 Modular Interaction Clinical TrialZzreflection_question:context_time_of_day_period   1.202
as.factor(arm)B3 Modular Interaction Clinical TrialZzshort_prompt:context_time_of_day_period         -0.579
as.factor(arm)B3 Modular Interaction Clinical TrialZzstories:context_time_of_day_period              -0.875
as.factor(arm)B3 Modular Interaction Clinical TrialZzreflection_question:context_active_last_48          NA
as.factor(arm)B3 Modular Interaction Clinical TrialZzshort_prompt:context_active_last_48                 NA
as.factor(arm)B3 Modular Interaction Clinical TrialZzstories:context_active_last_48                      NA
as.factor(arm)B3 Modular Interaction Clinical TrialZzreflection_question:context_study_period         0.906
as.factor(arm)B3 Modular Interaction Clinical TrialZzshort_prompt:context_study_period                0.802
as.factor(arm)B3 Modular Interaction Clinical TrialZzstories:context_study_period                     1.400
                                                                                                    Pr(>|t|)
(Intercept)                                                                                           0.0518
as.factor(arm)B3 Modular Interaction Clinical TrialZzreflection_question                              0.6769
as.factor(arm)B3 Modular Interaction Clinical TrialZzshort_prompt                                     0.7314
as.factor(arm)B3 Modular Interaction Clinical TrialZzstories                                          0.2779
context_is_preferred_time                                                                             0.0306
context_time_of_day_period                                                                            0.5946
context_active_last_48                                                                                0.1764
context_study_period                                                                                  0.2814
as.factor(arm)B3 Modular Interaction Clinical TrialZzreflection_question:context_is_preferred_time    0.1180
as.factor(arm)B3 Modular Interaction Clinical TrialZzshort_prompt:context_is_preferred_time           0.6032
as.factor(arm)B3 Modular Interaction Clinical TrialZzstories:context_is_preferred_time                0.8450
as.factor(arm)B3 Modular Interaction Clinical TrialZzreflection_question:context_time_of_day_period   0.2347
as.factor(arm)B3 Modular Interaction Clinical TrialZzshort_prompt:context_time_of_day_period          0.5649
as.factor(arm)B3 Modular Interaction Clinical TrialZzstories:context_time_of_day_period               0.3858
as.factor(arm)B3 Modular Interaction Clinical TrialZzreflection_question:context_active_last_48           NA
as.factor(arm)B3 Modular Interaction Clinical TrialZzshort_prompt:context_active_last_48                  NA
as.factor(arm)B3 Modular Interaction Clinical TrialZzstories:context_active_last_48                       NA
as.factor(arm)B3 Modular Interaction Clinical TrialZzreflection_question:context_study_period         0.3691
as.factor(arm)B3 Modular Interaction Clinical TrialZzshort_prompt:context_study_period                0.4265
as.factor(arm)B3 Modular Interaction Clinical TrialZzstories:context_study_period                     0.1675
                                                                                                     
(Intercept)                                                                                         .
as.factor(arm)B3 Modular Interaction Clinical TrialZzreflection_question                             
as.factor(arm)B3 Modular Interaction Clinical TrialZzshort_prompt                                    
as.factor(arm)B3 Modular Interaction Clinical TrialZzstories                                         
context_is_preferred_time                                                                           *
context_time_of_day_period                                                                           
context_active_last_48                                                                               
context_study_period                                                                                 
as.factor(arm)B3 Modular Interaction Clinical TrialZzreflection_question:context_is_preferred_time   
as.factor(arm)B3 Modular Interaction Clinical TrialZzshort_prompt:context_is_preferred_time          
as.factor(arm)B3 Modular Interaction Clinical TrialZzstories:context_is_preferred_time               
as.factor(arm)B3 Modular Interaction Clinical TrialZzreflection_question:context_time_of_day_period  
as.factor(arm)B3 Modular Interaction Clinical TrialZzshort_prompt:context_time_of_day_period         
as.factor(arm)B3 Modular Interaction Clinical TrialZzstories:context_time_of_day_period              
as.factor(arm)B3 Modular Interaction Clinical TrialZzreflection_question:context_active_last_48      
as.factor(arm)B3 Modular Interaction Clinical TrialZzshort_prompt:context_active_last_48             
as.factor(arm)B3 Modular Interaction Clinical TrialZzstories:context_active_last_48                  
as.factor(arm)B3 Modular Interaction Clinical TrialZzreflection_question:context_study_period        
as.factor(arm)B3 Modular Interaction Clinical TrialZzshort_prompt:context_study_period               
as.factor(arm)B3 Modular Interaction Clinical TrialZzstories:context_study_period                    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 0.275 on 52 degrees of freedom
  (135 observations deleted due to missingness)
Multiple R-squared:  0.3616,    Adjusted R-squared:  0.1652 
F-statistic: 1.841 on 16 and 52 DF,  p-value: 0.05019

For C1:

# df |> 
#   filter(mooclet_id == 586) |>
#   glm(formula = as.factor(reward) ~ as.factor(arm)+
#         context_is_weekday*as.factor(arm) + 
#         context_is_preferred_time*as.factor(arm) + 
#         context_time_of_day_period*as.factor(arm) + 
#         context_active_last_48*as.factor(arm) + 
#         context_study_period*as.factor(arm) + 
#         context_k10_response_sum_class*as.factor(arm), family = binomial) |>
#   summary()

For C2:

# using non-logistic
df |> 
  filter(mooclet_id == 587) |>
  lm(formula = reward ~ as.factor(arm)+
        context_study_period + 
        context_is_weekday*as.factor(arm) +
        context_active_last_48*as.factor(arm) + 
        context_k10_response_sum_class*as.factor(arm)) |>
  summary()

Call:
lm(formula = reward ~ as.factor(arm) + context_study_period + 
    context_is_weekday * as.factor(arm) + context_active_last_48 * 
    as.factor(arm) + context_k10_response_sum_class * as.factor(arm), 
    data = filter(df, mooclet_id == 587))

Residuals:
     Min       1Q   Median       3Q      Max 
-0.70977 -0.29322 -0.06214  0.29110  0.92674 

Coefficients:
                                                                                                      Estimate
(Intercept)                                                                                           0.562065
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzinspiration                                  -0.551275
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzno_motivation                                -0.465524
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzperspective                                  -0.242929
context_study_period                                                                                 -0.458437
context_is_weekday                                                                                   -0.024425
context_active_last_48                                                                                0.194423
context_k10_response_sum_class                                                                       -0.076385
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzinspiration:context_is_weekday                0.065717
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzno_motivation:context_is_weekday              0.026069
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzperspective:context_is_weekday               -0.239315
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzinspiration:context_active_last_48            0.087687
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzno_motivation:context_active_last_48         -0.004822
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzperspective:context_active_last_48            0.147586
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzinspiration:context_k10_response_sum_class    0.448198
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzno_motivation:context_k10_response_sum_class  0.619088
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzperspective:context_k10_response_sum_class    0.277826
                                                                                                     Std. Error
(Intercept)                                                                                            0.168164
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzinspiration                                    0.310234
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzno_motivation                                  0.239973
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzperspective                                    0.228847
context_study_period                                                                                   0.073320
context_is_weekday                                                                                     0.081396
context_active_last_48                                                                                 0.080188
context_k10_response_sum_class                                                                         0.164585
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzinspiration:context_is_weekday                 0.141110
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzno_motivation:context_is_weekday               0.120951
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzperspective:context_is_weekday                 0.109490
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzinspiration:context_active_last_48             0.156062
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzno_motivation:context_active_last_48           0.125693
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzperspective:context_active_last_48             0.112428
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzinspiration:context_k10_response_sum_class     0.298188
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzno_motivation:context_k10_response_sum_class   0.236518
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzperspective:context_k10_response_sum_class     0.224339
                                                                                                     t value
(Intercept)                                                                                            3.342
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzinspiration                                   -1.777
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzno_motivation                                 -1.940
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzperspective                                   -1.062
context_study_period                                                                                  -6.253
context_is_weekday                                                                                    -0.300
context_active_last_48                                                                                 2.425
context_k10_response_sum_class                                                                        -0.464
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzinspiration:context_is_weekday                 0.466
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzno_motivation:context_is_weekday               0.216
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzperspective:context_is_weekday                -2.186
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzinspiration:context_active_last_48             0.562
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzno_motivation:context_active_last_48          -0.038
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzperspective:context_active_last_48             1.313
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzinspiration:context_k10_response_sum_class     1.503
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzno_motivation:context_k10_response_sum_class   2.618
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzperspective:context_k10_response_sum_class     1.238
                                                                                                     Pr(>|t|)
(Intercept)                                                                                          0.000909
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzinspiration                                  0.076336
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzno_motivation                                0.053096
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzperspective                                  0.289087
context_study_period                                                                                 1.04e-09
context_is_weekday                                                                                   0.764280
context_active_last_48                                                                               0.015769
context_k10_response_sum_class                                                                       0.642824
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzinspiration:context_is_weekday               0.641673
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzno_motivation:context_is_weekday             0.829465
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzperspective:context_is_weekday               0.029416
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzinspiration:context_active_last_48           0.574517
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzno_motivation:context_active_last_48         0.969418
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzperspective:context_active_last_48           0.190035
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzinspiration:context_k10_response_sum_class   0.133611
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzno_motivation:context_k10_response_sum_class 0.009194
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzperspective:context_k10_response_sum_class   0.216288
                                                                                                        
(Intercept)                                                                                          ***
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzinspiration                                  .  
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzno_motivation                                .  
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzperspective                                     
context_study_period                                                                                 ***
context_is_weekday                                                                                      
context_active_last_48                                                                               *  
context_k10_response_sum_class                                                                          
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzinspiration:context_is_weekday                  
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzno_motivation:context_is_weekday                
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzperspective:context_is_weekday               *  
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzinspiration:context_active_last_48              
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzno_motivation:context_active_last_48            
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzperspective:context_active_last_48              
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzinspiration:context_k10_response_sum_class      
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzno_motivation:context_k10_response_sum_class ** 
as.factor(arm)C2 Long Prompt Motivation Clinical TrialZzperspective:context_k10_response_sum_class      
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 0.3935 on 399 degrees of freedom
  (9 observations deleted due to missingness)
Multiple R-squared:  0.2522,    Adjusted R-squared:  0.2222 
F-statistic: 8.412 on 16 and 399 DF,  p-value: < 2.2e-16

For C3:

# df |> 
#   filter(mooclet_id == 588) |>
#   glm(formula = as.factor(reward) ~ as.factor(arm)+
#         context_is_weekday*as.factor(arm) + 
#         context_is_preferred_time*as.factor(arm) + 
#         context_time_of_day_period*as.factor(arm) + 
#         context_active_last_48*as.factor(arm) + 
#         context_study_period*as.factor(arm) + 
#         context_k10_response_sum_class*as.factor(arm), family = binomial) |>
#   summary()

df |> 
  filter(mooclet_id == 588) |>
  lm(formula = reward ~ as.factor(arm)+
        context_is_preferred_time +
        context_study_period +
        context_is_weekday*as.factor(arm) + 
        context_active_last_48*as.factor(arm) + 
        context_k10_response_sum_class*as.factor(arm)) |>
  summary()

Call:
lm(formula = reward ~ as.factor(arm) + context_is_preferred_time + 
    context_study_period + context_is_weekday * as.factor(arm) + 
    context_active_last_48 * as.factor(arm) + context_k10_response_sum_class * 
    as.factor(arm), data = filter(df, mooclet_id == 588))

Residuals:
    Min      1Q  Median      3Q     Max 
-1.1171 -0.2135  0.0819  0.1722  1.1010 

Coefficients:
                                                                                                  Estimate
(Intercept)                                                                                       0.598318
as.factor(arm)C3 Long Prompt Reminder Clinical TrialZzno_reminder                                -0.239948
context_is_preferred_time                                                                        -0.125044
context_study_period                                                                             -0.597062
context_is_weekday                                                                                0.173968
context_active_last_48                                                                            0.322082
context_k10_response_sum_class                                                                    0.022749
as.factor(arm)C3 Long Prompt Reminder Clinical TrialZzno_reminder:context_is_weekday             -0.286294
as.factor(arm)C3 Long Prompt Reminder Clinical TrialZzno_reminder:context_active_last_48         -0.002833
as.factor(arm)C3 Long Prompt Reminder Clinical TrialZzno_reminder:context_k10_response_sum_class  0.239294
                                                                                                 Std. Error
(Intercept)                                                                                        0.108986
as.factor(arm)C3 Long Prompt Reminder Clinical TrialZzno_reminder                                  0.190378
context_is_preferred_time                                                                          0.033511
context_study_period                                                                               0.057309
context_is_weekday                                                                                 0.034077
context_active_last_48                                                                             0.041007
context_k10_response_sum_class                                                                     0.083874
as.factor(arm)C3 Long Prompt Reminder Clinical TrialZzno_reminder:context_is_weekday               0.091732
as.factor(arm)C3 Long Prompt Reminder Clinical TrialZzno_reminder:context_active_last_48           0.120349
as.factor(arm)C3 Long Prompt Reminder Clinical TrialZzno_reminder:context_k10_response_sum_class   0.168803
                                                                                                 t value
(Intercept)                                                                                        5.490
as.factor(arm)C3 Long Prompt Reminder Clinical TrialZzno_reminder                                 -1.260
context_is_preferred_time                                                                         -3.731
context_study_period                                                                             -10.418
context_is_weekday                                                                                 5.105
context_active_last_48                                                                             7.854
context_k10_response_sum_class                                                                     0.271
as.factor(arm)C3 Long Prompt Reminder Clinical TrialZzno_reminder:context_is_weekday              -3.121
as.factor(arm)C3 Long Prompt Reminder Clinical TrialZzno_reminder:context_active_last_48          -0.024
as.factor(arm)C3 Long Prompt Reminder Clinical TrialZzno_reminder:context_k10_response_sum_class   1.418
                                                                                                 Pr(>|t|)
(Intercept)                                                                                      5.71e-08
as.factor(arm)C3 Long Prompt Reminder Clinical TrialZzno_reminder                                0.207971
context_is_preferred_time                                                                        0.000206
context_study_period                                                                              < 2e-16
context_is_weekday                                                                               4.31e-07
context_active_last_48                                                                           1.59e-14
context_k10_response_sum_class                                                                   0.786301
as.factor(arm)C3 Long Prompt Reminder Clinical TrialZzno_reminder:context_is_weekday             0.001880
as.factor(arm)C3 Long Prompt Reminder Clinical TrialZzno_reminder:context_active_last_48         0.981230
as.factor(arm)C3 Long Prompt Reminder Clinical TrialZzno_reminder:context_k10_response_sum_class 0.156775
                                                                                                    
(Intercept)                                                                                      ***
as.factor(arm)C3 Long Prompt Reminder Clinical TrialZzno_reminder                                   
context_is_preferred_time                                                                        ***
context_study_period                                                                             ***
context_is_weekday                                                                               ***
context_active_last_48                                                                           ***
context_k10_response_sum_class                                                                      
as.factor(arm)C3 Long Prompt Reminder Clinical TrialZzno_reminder:context_is_weekday             ** 
as.factor(arm)C3 Long Prompt Reminder Clinical TrialZzno_reminder:context_active_last_48            
as.factor(arm)C3 Long Prompt Reminder Clinical TrialZzno_reminder:context_k10_response_sum_class    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 0.3484 on 672 degrees of freedom
  (8 observations deleted due to missingness)
Multiple R-squared:  0.4884,    Adjusted R-squared:  0.4816 
F-statistic: 71.29 on 9 and 672 DF,  p-value: < 2.2e-16

For C4:

# df |> 
#   filter(mooclet_id == 590) |>
#   glm(formula = as.factor(reward) ~ as.factor(arm)+
#         context_is_weekday*as.factor(arm) + 
#         context_is_preferred_time*as.factor(arm) + 
#         context_time_of_day_period*as.factor(arm) + 
#         context_active_last_48*as.factor(arm) + 
#         context_study_period*as.factor(arm) + 
#         context_k10_response_sum_class*as.factor(arm), family = binomial) |>
#   summary()