[数析学院]对比带有NA值的向量或因素

作者: Datartisan数据工匠 | 来源:发表于2016-06-24 15:07 被阅读32次

    问题 Problem

    在R中,如何对含有NA值的向量或因素进行逐对比较,并且正确的返回TRUE和FALSE(而不是NA)呢?

    指南 Solution

    假设我们拥有的数据是这样一个列数为2的布尔值向量数据框形式:

    通常情况下,当你对一组带有NA值的向量或因素进行对比时,只要用于对比的双方个体值中的任意一方为NA,那么在返回的结果向量中对应位置的结果也会为NA。在我们看来,这样的结果也许并不尽如人意。

    构建支持NA值对比的函数 

    下文中我们构建的函数将实质性的解决带有NA值的序列问题。在这个函数中,我们会把NA当作一个另外的值进行处理:如果两个用于对比的向量中所有元素都为NA,那么函数将对返回TRUE;如果只有其中一个向量中存在NA值元素,那么它将返回FALSE;如果对比的向量中都没有NA值元素,那么对比结果将于我们在上文中所见的一致。

    函数运用实例 

    布尔值向量对比:

    这种方法同样适用于因素变量,即使用于对比的因素具有不同的层级次序:

    [数析学院]

    我们致力于打造更加精要的课程,如果小伙伴们在工作和学习中遇到什么问题,可以给我们留言。

    相关文章

      网友评论

      本文标题:[数析学院]对比带有NA值的向量或因素

      本文链接:https://www.haomeiwen.com/subject/qebodttx.html