这里是data.table我正在使用:
> head(dataTable)
persnr 1993 1994
1: 60487416 0.5777598 NA
2: 60487511 NA 5.245855
3: 60488034 0.5777598 23.100167
4: 60488147 0.5777598 NA
5: 60488240 0.5777598 23.100167
6: 60488338 0.5777598 23.100167
将列年数字化是非常有用的,因为我可以简单地遍历这些。但它有一个缺点:
dataTable[is.na(1993),]
Empty data.table (0 rows) of 3 cols: persnr,1993,1994
错误1993
表示整数,而不是将其用作对象名称。否则,我无法解释它是如何产生满足这种条件的零行。当列名是数字时,如何检查NA
值?
答案 0 :(得分:0)
您可能希望将data.frame视为矩阵,并使用apply函数查找NA值:
应用(dataTable中,如图1所示,is.na)
这比迭代列更快。
如果您想查找具有任何NA值的行,您可以这样做:
应用(dataTable中,如图1所示,功能(X){任何(is.na(X))})