创建另一个变量多级回归值的新变量
Create a new Variable of values of another variable-multilevel regression
我准备创建一个多层次分析(我是个新手)。
在此分析中,我想测试预测变量的高值 (here:senseofhumor)(数值 - 转换为“高”、“低”、“中”)是否会预测(数字)结果比其他(数字)预测因子(senseofhomor-seriousness-friednlyness)更多。
我有一个包含很多人和群体的数据集,我想比较各组之间关于 SenseofhumorHIGH
影响的结果
该代码可能如下所示
RandomslopeEC <- lme(criteria(timepoint1) ~ senseofhumor + seriousness + friendlyness , data = DATA, random = ~ **SenseofhumorHIGH**|group)
出于这个原因,我通过
为我的数字预测器创建了值“高”“低”“中”
library(tidyverse)
DATA <- DATA %>%
mutate(predictorNew = case_when(senseofhumor< quantile(senseofhumor, 0.5) ~ 'low',
senseofhumor > quantile(senseofhumor, 0.75)~'high',
TRUE ~ 'med'))
现在它们看起来像这样:
Person
Group
senseofhumor
1
56
low
7
1
high
87
7
low
764
45
high
现在我意识到,如果我想测试我的想法,我可能需要将这个变量值分割成单独的变量。
你们知道如何生成变量吗?它们可能看起来像这样?
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
您觉得我的方法有意义吗?或者你有更好的主意吗?
非常感谢
欢迎学习 R。您将希望将这些类型的变量转换为“因子”,R 将能够相应地处理它们。为此,请使用 as.factor(variable)
- 所以对您来说可能是 DATA$senseofhumor <- as.factor(DATA$senseofhumor)
。如果需要转换多列,可以使用:
factor_cols <- c("Var1","Var2","Var3") # list columns you want as factors
DATA[factor_cols] <- lapply(DATA[factor_cols], as.factor)
由于您是新手,请注意此论坛通常用于解决无法在网上轻易找到的问题。这个问题比较常规,可以快速找到更多详细信息google search。虽然 SO 是学习 R 的好地方,但您将来可能会因为这样的常规问题而受到 SO 社区的惩罚。只是想帮助确保您不断学习!
我准备创建一个多层次分析(我是个新手)。
在此分析中,我想测试预测变量的高值 (here:senseofhumor)(数值 - 转换为“高”、“低”、“中”)是否会预测(数字)结果比其他(数字)预测因子(senseofhomor-seriousness-friednlyness)更多。 我有一个包含很多人和群体的数据集,我想比较各组之间关于 SenseofhumorHIGH
影响的结果该代码可能如下所示
RandomslopeEC <- lme(criteria(timepoint1) ~ senseofhumor + seriousness + friendlyness , data = DATA, random = ~ **SenseofhumorHIGH**|group)
出于这个原因,我通过
为我的数字预测器创建了值“高”“低”“中”library(tidyverse)
DATA <- DATA %>%
mutate(predictorNew = case_when(senseofhumor< quantile(senseofhumor, 0.5) ~ 'low',
senseofhumor > quantile(senseofhumor, 0.75)~'high',
TRUE ~ 'med'))
现在它们看起来像这样:
Person | Group | senseofhumor |
---|---|---|
1 | 56 | low |
7 | 1 | high |
87 | 7 | low |
764 | 45 | high |
现在我意识到,如果我想测试我的想法,我可能需要将这个变量值分割成单独的变量。
你们知道如何生成变量吗?它们可能看起来像这样?
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 |
您觉得我的方法有意义吗?或者你有更好的主意吗?
非常感谢
欢迎学习 R。您将希望将这些类型的变量转换为“因子”,R 将能够相应地处理它们。为此,请使用 as.factor(variable)
- 所以对您来说可能是 DATA$senseofhumor <- as.factor(DATA$senseofhumor)
。如果需要转换多列,可以使用:
factor_cols <- c("Var1","Var2","Var3") # list columns you want as factors
DATA[factor_cols] <- lapply(DATA[factor_cols], as.factor)
由于您是新手,请注意此论坛通常用于解决无法在网上轻易找到的问题。这个问题比较常规,可以快速找到更多详细信息google search。虽然 SO 是学习 R 的好地方,但您将来可能会因为这样的常规问题而受到 SO 社区的惩罚。只是想帮助确保您不断学习!