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

时间:2016-02-27 14:36:57

标签: r

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

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

1 个答案:

答案 0 :(得分:1)

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

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

为了使用subset函数,通常需要知道这两列的列名。如果知道名称为name1name2,则可能是:

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

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