dplyr-如何重新编码为NA?
我正在尝试以下方法:dplyr-如何重新编码为NA?,r,dplyr,na,recode,R,Dplyr,Na,Recode,我正在尝试以下方法: data %>% mutate_at(vars(Q1), recode, "I don't agree" = 0, "I agree" = 1, "I don't know" = NA) 但我得到了以下错误: Q1 must be a double vector, not a logical vector 如何使用dplyr将“我不知道”重新编码为缺少的值?使用iris数据集,此代码有效 library(dplyr) iris %>% mutat
data %>%
mutate_at(vars(Q1), recode, "I don't agree" = 0, "I agree" = 1, "I don't know" = NA)
但我得到了以下错误:
Q1 must be a double vector, not a logical vector
如何使用dplyr将“我不知道”重新编码为缺少的值?使用
iris
数据集,此代码有效
library(dplyr)
iris %>%
mutate_at(vars(Species), recode, setosa = 0, versicolor = 1, virginica = NA_real_)
基本上,您需要使用
NA\u real\uu
而不是简单的NA
使用iris
数据集,此代码有效
library(dplyr)
iris %>%
mutate_at(vars(Species), recode, setosa = 0, versicolor = 1, virginica = NA_real_)
基本上,您需要使用
NA\u real\u
而不是简单的NA
另一个选项是传递命名向量
library(dplyr)
iris %>%
mutate_at(vars(Species), ~ setNames(c(0, 1, NA),
c('setosa', 'versicolor', 'virginica'))[as.character(.)])
另一个选项是传递命名向量
library(dplyr)
iris %>%
mutate_at(vars(Species), ~ setNames(c(0, 1, NA),
c('setosa', 'versicolor', 'virginica'))[as.character(.)])
您能否使用
dput
功能发布示例数据,以便用户更好地帮助您?谢谢您。无论如何,尝试使用玩具数据集时,问题应该是如何分配NAC,您是否可以使用dput
功能发布示例数据,以便用户能够更好地帮助您?谢谢您。无论如何,尝试使用玩具数据集时,问题应该是分配NA