如何读取表中的NA计数?

时间:2014-03-25 09:13:16

标签: r

如果我对表()使用useNA="always",则生成的对象将包含名为NA(不是"NA")的条目。有没有办法读这个值?

我找到了一个可能的解决方案here(最后一行),但我想有一个更优雅的解决方案?!

test = table(c(1,1,2,2,3,3,NA), useNA="always")
print(test[NA])      # <NA> <NA> <NA> <NA>
print(test[[NA]])    # subscript out of bounds
print(test["<NA>"])  # NA

test[which(is.na(names(test)))[1]]  # Works: 1, but not exactly ... elegant

由于

1 个答案:

答案 0 :(得分:1)

由于NA值的计数是最后一个,您可以使用tail(test, 1)

据我所知,当某个名称为NA时,您正在使用字符索引查找提取。我相信不可能直接用NA名称提取对象。来自the Extract documentation

  

空(“”)和NA索引都不匹配任何名称,甚至不是空的   缺少名字。如果任何对象没有名称或适当的dimnames,   他们被视为所有“”,因此没有任何匹配。