使用 dplyr 在数据操作中使用 revalue
Use revalue in data manipulation with dplyr
我想使用以下代码,但它不起作用,我不知道为什么?:
data <- data.frame(variable1 = as.factor(rep(c("A","B","C"), each=5)),
variable2 = rnorm(15,10,2))
require(plyr)
require(dplyr)
data <- data %>%
revalue(variable1, c("A"="House", "B"="Flat", "C"="Loft"))
问题是 variable1
不是因子或字符向量。它是数据框中一列的 "name"。 revalue
函数需要因子或字符向量。您可以像这样使用 mutate()
函数来消除问题:
# your code
data <- data.frame(variable1 = as.factor(rep(c("A","B","C"), each=5)),
variable2 = rnorm(15,10,2))
require(plyr)
require(dplyr)
# corrected code
data <-
data %>%
mutate(variable1 = revalue(variable1, c("A"="House", "B"="Flat", "C"="Loft")))
我想使用以下代码,但它不起作用,我不知道为什么?:
data <- data.frame(variable1 = as.factor(rep(c("A","B","C"), each=5)),
variable2 = rnorm(15,10,2))
require(plyr)
require(dplyr)
data <- data %>%
revalue(variable1, c("A"="House", "B"="Flat", "C"="Loft"))
问题是 variable1
不是因子或字符向量。它是数据框中一列的 "name"。 revalue
函数需要因子或字符向量。您可以像这样使用 mutate()
函数来消除问题:
# your code
data <- data.frame(variable1 = as.factor(rep(c("A","B","C"), each=5)),
variable2 = rnorm(15,10,2))
require(plyr)
require(dplyr)
# corrected code
data <-
data %>%
mutate(variable1 = revalue(variable1, c("A"="House", "B"="Flat", "C"="Loft")))