从宽到长,R pivot_langer()有两个内部因子存储在一个变量中



我想用两个主题内因素计算方差分析,为此我首先需要将文件格式从宽转换为长。这里的变量名称包括两个不同的内部因素:三因素变量lureType(new、sem、per(和二因素变量emotion(Neu、Neg(,其值表示因变量(falseAlarms(。

因此,我从选择相关变量开始:

long_file <- wide_file %>%
select(ID, betweenVariable, newNeu_falseAlarm,newNeg_falseAlarm,
semNeu_falseAlarm,semNeg_falseAlarm,
perNeu_falseAlarm,perNeg_falseAlarm) %>% 

如果变量只包括因子中的一个,我会这样做情感:

pivot_longer(cols = c(Neg_falseAlarm, Neu_falseAlarm),
names_to = "emotion",
values_to = "falseAlarms")

或对于lureType:

pivot_longer(cols = c(new_falseAlarm, sem_falseAlarm, per_falseAlarm),
names_to = "lureType",
values_to = "falseAlarms")

如果变量存储两个不同的因子,有人知道如何将长格式转换为宽格式吗?

TIA!

我找到了一个解决方案:

pivot_longer(cols=c(newNeu_falseAlarm,newNeg_falseAlarm, semNeu_falseAlarmsemNeg_falseAlarm perNeu_falseAlarm,perNeg_falseAlarm),
names_to=c("lureType","emotion"),
names_sep= "N",
values_to = "falseAlarms"
)

很高兴,如果有人想添加一个更优雅的解决方案。我对R.不太熟悉

最新更新