我想知道我的代码有什么问题,并且发现我奇怪的结果的原因是==
和%in%
对NA的意外处理。
> NA %in% NA
[1] TRUE
> NA == NA
[1] NA
这有什么理由吗?我一直在阅读==
运算符及其对NA
的处理方式,但无法找到有关%in%
运算符处理NA&#的原因的任何信息39;不同。
答案 0 :(得分:1)
如果您使用NA
查看?"=="
文档,则会指出" 缺失值(NA)和NaN值即使对自己也不具有可比性,因此涉及它们的比较将始终导致NA。"
另请注意,您可以使用相同的功能,即identical(NA,NA)