Chapter 41 load behavioral daata

df = read.csv('/Users/h/Dropbox/projects_dropbox/social_influence_analysis/resources/references/cue_behavioraldata.csv')
colnames(df)
##  [1] "X"                  "sub"                "ses"               
##  [4] "run"                "task"               "trialindex"        
##  [7] "IV_cuelevel"        "IV_stimintensity"   "RATING_expectation"
## [10] "RATING_outcome"
# PE :: prediction error ______________________________________________________
df$PE =   df$RATING_outcome - df$RATING_expectation
# Lag expectation rating ______________________________________________________
# per run/ses/sub
data_a3lag <- df %>%
  group_by(sub,ses,run) %>% 
  mutate(next_trial.RATING_expectation = lag(RATING_expectation, n = 1, default = NA)) %>% 
  mutate(prev_trial.RATING_expectation = lead(RATING_expectation, n = 1, default = NA)) %>%
  mutate(ave.RATING_expectation = mean(RATING_expectation, na.rm = TRUE))
data_a3lag <- data_a3lag[!is.na(data_a3lag$ave.RATING_expectation),]
taskname = 'pain'
data_a3lag$next_trial.RATING_expect_fill = coalesce(data_a3lag$next_trial.RATING_expectation, data_a3lag$ave.RATING_expectation) 
data_a3lag$prev_trial.RATING_expect_fill = coalesce(data_a3lag$prev_trial.RATING_expectation, data_a3lag$ave.RATING_expectation) 

data_a3lag <- data_a3lag[data_a3lag$task == 'pain',]
# EXPECTUPDATE :: expectation (N) - expectation (N-1) ________________________
df_jepma <- data_a3lag %>%
  # group_by(sub,ses,run) %>%
  mutate(EXPECTUPDATE_NEXT =  RATING_expectation- next_trial.RATING_expect_fill)  %>%
  mutate(EXPECTUPDATE_PREV =  RATING_expectation- prev_trial.RATING_expect_fill)  %>%
  mutate(EXPECTUPDATE_PREV_JEPMA =  (RATING_expectation- prev_trial.RATING_expect_fill)/(PE+1))
df_jepma$PE_type[df_jepma$PE >  0] <- "aversive"
## Warning: Unknown or uninitialised column: `PE_type`.
df_jepma$PE_type[df_jepma$PE <= 0] <- "appetitive"
df_jepma$PE_con[df_jepma$PE <=  0] <- -1
## Warning: Unknown or uninitialised column: `PE_con`.
df_jepma$PE_con[df_jepma$PE > 0] <-  1
df_jepma$cue_con[df_jepma$IV_cuelevel == "low_cue"] <- -1
## Warning: Unknown or uninitialised column: `cue_con`.
df_jepma$cue_con[df_jepma$IV_cuelevel == "high_cue"] <- 1
df_jepma <- df_jepma[!is.na(df_jepma$RATING_expectation),]

write.csv(df_jepma, '/Users/h/Desktop/cuerating_0505.csv')