我的RStudio版本是版本0.98.932,R是3.1.1,我的数据表版本是1.9.4。
以下是一段代码示例:
library(data.table)
TEMP <- data.table(SHOPPER_ID = c(953103325440, 953103325441))
TEMP[SHOPPER_ID == 953103325440]
我希望在控制台中返回一行:
## SHOPPER_ID
## 1: 953103325440
然而R实际返回的是:
## SHOPPER_ID
## 1: 953103325440
## 2: 953103325441
我不确定为什么会发生这种情况,我想知道这只是一个错误,或者它是否是一个可能的错误。当我将SHOPPER_ID列转换为字符变量时,我得到了我期望得到的内容。
我的一位同事有一个旧版本的data.table(&lt; 1.9我认为),他没有遇到同样类型的错误。如果我运行以下代码:
unique(TEMP)
我得到了理想的结果
## SHOPPER_ID
## 1: 953103325440
答案 0 :(得分:0)
你可以这样做:
TEMP[TEMP$SHOPPER_ID == 953103325440, ]
同样,可以在列unique(TEMP$SHOPPER_ID)