【发布时间】:2015-08-07 08:52:30
【问题描述】:
我偶然发现了奇怪的数据表 i 行为,它返回一行带有 NAs 的行,我希望这是一个空数据表。见:
a = data.table(a = 1, d = NA)
a[!is.na(a) & d == "3"]
# a d
# 1: NA NA
我希望这里的结果是一个空的数据表。 比较:
a = data.table(a = c(1,2), d = c(NA,3))
a[!is.na(a) & d == "3"]
# a d
# 1: 2 3
不过,这不会产生带有 NA 值的额外行。
这是data.table 中的错误还是有人可以解释这种行为背后的一些逻辑?
【问题讨论】:
-
我在 R 2.15.2 和 data.table 1.9.4,如果这很重要的话
-
这是一个错误。请在 github 项目页面上提出问题。谢谢。
-
Reported。这个问题应该怎么做?
-
最好保留它,以便我们可以在修复后回答它,这将阻止未来的 Q(如果被问到很容易标记为 dup)。
-
@Arun,看起来它已在 1.9.8 中修复。您能否提供一个答案并确认这不再可重现,以便我接受?
标签: r data.table