首页 文章

在数据框的选定列中包含'.'的行的子集作为缺失值而不是NA

提问于
浏览
-6

我们有一个来自制表符分隔文件的数据框 . 数据框NCNT具有第2列和第3列,观察值为A,G,T,C,缺失数据表示为“ . ” . 而不是NA .

我们希望使用subset命令来定义新的数据帧newNCNT,使其仅包含具有缺失值' . '的行 . 第2列和第3列的值 .

1 回答

  • 1

    这应该使用普通的逻辑索引和逻辑运算符来提供所需的子集:

    newNCNT <- NCNT[ NCNT[[2]] == "." & NCNT[[3]] == ".", ]
    

    为了使用 subset 函数,通常需要知道这两列的列名 . 如果知道名字是 name1name2 那么它可能是:

    newNCNT <- subset( NCNT, name1 == "." & name2 == ".")
    

    这将传递行,其中这些列中的两个值都是"." . 许多人难以正确表达所需的逻辑操作,因此如果您希望第2列或第3列的行具有缺失值,则需要 | (OR)运算符 . @docendodiscimus显然认为你想要后者 .

相关问题