我搞砸了将调查数据输入数据框,我有一个值为P,G,S和N的列。我需要将P替换为1,G替换为2,S替换为3,N替换为4。
df1$type <- replace(as.numeric(df1$type), df1$type == "P", "1")
我尝试使用它,但这会影响所有值而不仅仅是P.
如何单独更换每个值? P,G,S和N是随机排列的,所以我不能用1,2,3,4的重复列填充它。
答案 0 :(得分:2)
怎么样
df1$type <- as.numeric(factor(df1$type, levels=c("P","G","S","N")))
R中的因子变量自动为每个级别分配一个整数。通过使用as.numeric(),您可以提取整数值(只需确保您的级别按正确的顺序排列)。