在 R 中对数据进行子集化时生成 NA
NA's generated when subsetting data in R
我遇到了这个问题,这让我发疯。我尝试使用以下命令在 R 中过滤数据:
data <- data[data$v1 != "T",]
只要过滤后的数据包含所需的行数,这就有效。但是,由于 "v1" 包含 NA,过滤前所有 v1 = NA 的观察结果现在仅包含所有列中的 NA。
有人知道为什么会这样吗?
已经非常感谢了。
NA 与实际值不可比。 'is this equal to "T"' 的答案是 idk,所以整行都变成了 NA。避免它的方法是按照@akrun 的建议排除 NA,或者如果您希望保留这些行,则显式查找 NA:
data[data$v1 != "T" | is.na(data$v1),]
我遇到了这个问题,这让我发疯。我尝试使用以下命令在 R 中过滤数据:
data <- data[data$v1 != "T",]
只要过滤后的数据包含所需的行数,这就有效。但是,由于 "v1" 包含 NA,过滤前所有 v1 = NA 的观察结果现在仅包含所有列中的 NA。
有人知道为什么会这样吗?
已经非常感谢了。
NA 与实际值不可比。 'is this equal to "T"' 的答案是 idk,所以整行都变成了 NA。避免它的方法是按照@akrun 的建议排除 NA,或者如果您希望保留这些行,则显式查找 NA:
data[data$v1 != "T" | is.na(data$v1),]