【发布时间】:2017-03-02 19:47:38
【问题描述】:
我主要在 Mac 中使用 Rstudio。最近我不得不开始使用 Windows。但是,我发现 unique() 不会根据键在 data.table 中提供唯一行。这是一个例子:
a=c(2,3,3,3,3,5,6,7)
b=c("a","a","f","g","a","d","t","l")
e=data.table(a,b)
setkey(e, a)
key(e) # this works fine
unique(e)
unique() 仅删除整行(第 5 行)的重复项。完全相同的代码在我的 Mac 上运行良好。
【问题讨论】:
-
那是因为你在两者上都有不同的 data.table 版本。在 Mac 上你有一个 ?unique 的文档,例如“默认情况下,所有列都在使用。最近为了与 data.frame 方法保持一致而对此进行了更改。在 ”。然后在您的 Windows 上尝试
unique(e, by = "a")。
标签: r data.table unique