问题描述
我第一次尝试使用汽车包装中的“重新编码”。代码看起来很简单,我想将“pm25_rank”的观察重命名为“PM2.5”,但是我不断收到错误消息,说有一个未使用的争论。
任何帮助将不胜感激!
提前致谢。
dat<-c("pm25_rank","pm25_rank","pm25_rank")
test1<-recode(dat,c("PM2.5" = "pm25_rank"))
错误:重新编码错误(dat,pm25_rank = "PM2.5") : 未使用的参数 (pm25_rank = "PM2.5")
解决方法
这会起作用。请注意,您需要 ""
和 ''
test1<-recode(dat," 'pm25_rank' = 'PM2.5' ")
,
翻转关联并去掉左侧的字符串格式。
library(dplyr)
recode(dat,pm25_rank = 'PM2.5')
# [1] "PM2.5" "PM2.5" "PM2.5" "PM2.5" "PM2.5" "PM2.5" "PM2.5" "PM2.5" "PM2.5" "PM2.5"
,
带有 sub
的选项
sub("pm(\\d)(\\d)_.*","PM\\1.\\2",dat)
,
您还可以根据文档使用命名向量重新编码:
vec <- setNames(c('PM2.5'),c('pm25_rank'))
dplyr::recode(dat,!!!vec)
如果您的代码中有更容易使用的值键,那么这可能会很方便,这样您就不必手动输入内容。