【发布时间】:2020-02-20 03:15:27
【问题描述】:
当使用mutate_at 将数据中的变量更改为字符、数字或因子时,我遇到了数字变量的问题:
library(dplyr)
f <- c('V1', 'V2')
c <- c('V3', 'V4')
n <- c('V5', 'V6')
data <- data.frame(V1 = c(0,2,""),
V2 = c("", 3, 4),
V3 = c(1, 2, 3),
V4 = c(0, 0, ""),
V5 = c(-1, -1, ""),
V6 = c(0, 1, ""))
data <- data %>%
mutate_at(f, as.factor) %>%
mutate_at(c, as.character) %>%
mutate_at(n, as.numeric)
在这种特定情况下,我得到了一些奇怪的结果:
V1 V2 V3 V4 V5 V6
1 0 1 0 2 2
2 1 3 2 0 2 3
3 4 3 1 1
在其他情况下,如在我的原始数据中,我用NA 代替空格。
有人可以帮忙吗?
【问题讨论】:
-
在管道开头添加
mutate_all(as.character)。