将值替换为r data.table中的Factor

时间:2014-04-03 06:45:33

标签: r replace split data.table

我有一个数据集,其中包含一个因子列(在示例中为cut)。它目前设置如下:

library(ggplot2) # access to diamonds dataset
library(data.table)
data <- data.table(diamonds)[,list(mean_carat=mean(carat)), by=c('cut', 'color')]

我正在尝试将名为“Fair”的所有条目更改为“Good”,因为在我的数据集中,这两个条目实际上是相同的,但标注不同。我一直试图使用的语法是:

data[which(cut = "Fair"), cut := "Good"]

,输出

>Error: unexpected symbol in "data[which(cut = "Fair"), cut := "Good"]"

谁能告诉我哪里出错了?

1 个答案:

答案 0 :(得分:2)

您使用=代替==。试试

data[which(cut == "Fair"), cut := "Good"]

您实际上也不需要which声明:

data[cut == "Fair", cut := "Good"]