rvariablesmulti-levelmutationmultilevel-analysis

Create a new Variable of values of another variable-multilevel regression


I am up to create a multilevel analysis (and I am a total newbie).

In this analysis I want to test if a high value of a predictor( here:senseofhumor) (numeric value - transfered into "high","low","medium") would predict the (numeric)outcome more than the other (numeric)predictors (senseofhomor-seriousness-friednlyness). I have a dataset with many people and groups and want to compare the outcome between the groups regarding the influence of SenseofhumorHIGH

The code for that might look like this

RandomslopeEC <- lme(criteria(timepoint1) ~ senseofhumor + seriousness + friendlyness , data = DATA, random = ~ **SenseofhumorHIGH**|group)

For that reason I created values "high" "low" "medium" for my numeric predictor via

library(tidyverse)
DATA <- DATA %>% 
  mutate(predictorNew = case_when(senseofhumor< quantile(senseofhumor, 0.5) ~ 'low', 
                      senseofhumor > quantile(senseofhumor, 0.75)~'high', 
                      TRUE ~ 'med'))

Now they look like this:

Person Group senseofhumor
1 56 low
7 1 high
87 7 low
764 45 high

Now I realized i might need to cut this variable values in separate variables if I want to test my idea.

Do any of you know how to generate variables, that they may look like this?

Person Group senseofhumorHIGH senseofhumorMED senseofhumorLOW
1 56 0 0 1
7 1 1 0 0
87 7 0 0 1
764 45 1 0 0
51 3 1 0 0
362 9 1 0 0
87 27 0 0 1

Does this make any sense to you regarding my approach? Or do you have a better idea?

Thanks a lot in advance


Solution

  • Welcome to learning R. You will want to convert these types of variables to "factors," and R will be able to process them accordingly. To do that, use as.factor(variable) - so for you it may be DATA$senseofhumor <- as.factor(DATA$senseofhumor). If you need to convert multiple columns, you can use:

    factor_cols <- c("Var1","Var2","Var3") # list columns you want as factors
    DATA[factor_cols] <- lapply(DATA[factor_cols], as.factor)
    

    Since you are new, note that this forum is typically for questions that cant be easily found online. This question is relatively routine and more details can be found with a quick google search. While SO is a great place to learn R, you may be penalized by the SO community in the future for routine questions like this. Just trying to help ensure you keep learning!