小编Ber*_*and的帖子

R:如何一次重新编码多个变量

我的数据集中有几个变量需要以完全相同的方式进行重新编码,还有一些其他需要以不同方式重新编码的变量.我试着写一个函数来帮助我,但我遇到了麻烦.

library(dplyr)
recode_liberalSupport = function(arg1){
  arg1 = recode(arg1, "1=-1;2=1;else=NA")
  return(arg1)
}

liberals = c(df$var1, df$var4, df$var8)
for(i in unique(liberals)){
  paste(df$liberals[i] <- sapply(liberals, FUN = recode_liberalSupport))
}
Run Code Online (Sandbox Code Playgroud)

R studio在这上工作约5分钟,然后给我这个错误信息:

Error in `$<-.data.frame`(`*tmp*`, liberals, value = c(NA_real_, NA_real_,  : 
  replacement has 9 rows, data has 64600
In addition: Warning messages:
1: Unknown or uninitialised column: 'liberals'. 
2: In df$liberals[i] <- sapply(liberals, FUN = recode_liberalSupport) :
  number of items to replace is not a multiple of replacement length
Run Code Online (Sandbox Code Playgroud)

任何帮助将非常感激!谢谢

r dplyr recode

4
推荐指数
1
解决办法
8818
查看次数

标签 统计

dplyr ×1

r ×1

recode ×1