如何删除具有 NA 值的“行”? [复制]

Posted

技术标签:

【中文标题】如何删除具有 NA 值的“行”? [复制]【英文标题】:How to remove "rows" with a NA value? [duplicate] 【发布时间】:2011-09-02 14:02:45 【问题描述】:

可能重复:R - remove rows with NAs in data.frame

如何快速删除其中一列中具有 NA 值的数据框中的“行”?

所以

     x1  x2
[1,]  1 100
[2,]  2  NA
[3,]  3 300
[4,] NA 400
[5,]  5 500

应该导致:

     x1  x2
[1,]  1 100
[3,]  3 300
[5,]  5 500

【问题讨论】:

查看那里的答案以解决您的问题。请注意,您向我们展示的是矩阵而不是数据框。 请至少尝试通过 Rseek.org 或其他方式在此处搜索您的答案(添加 [r] 以在 R 问题中搜索)。 这个问题不与行中的所有值都为 NA 相关吗?并且可能是特定列中的NA?因此,这是一个稍微不同(也更容易)的问题。与同一概念的简单和困难应用程序一样,人们可以从困难中推断出简单的答案,但这可能很难:) 【参考方案1】:
dat <- data.frame(x1 = c(1,2,3, NA, 5), x2 = c(100, NA, 300, 400, 500))

na.omit(dat)
  x1  x2
1  1 100
3  3 300
5  5 500

【讨论】:

就我而言,这是行不通的! df&lt;-structure(list(vars = structure(1:5, .Label = c("a", "b", "v", "d", "e", "s", "ds" ), class = "factor"), '1' = c(NA_real_, NA_real_, NA_real_, NA_real_, NA_real_), '2' = c(NA, 0.9, NA, NA, NA), '3' = c(NA_real_, NA_real_, NA_real_, NA_real_, NA_real_)), .Names = c("vars", "1", "2", "3"), row.names = c(NA, 5L), class = "data.frame")

以上是关于如何删除具有 NA 值的“行”? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

在为选定列分配变量后,如何删除一些具有 NA 值的行?

删除特定列中具有空白值的行

加入后如何删除具有非空值的重复列? [复制]

R语言dplyr包移除dataframe数据行实战(Remove Rows):按照条件移除数据行按照索引移除数据行删除包含NA值的所有数据行删除具体列包含NA值的数据行

如何通过熊猫或火花数据框删除所有行中具有相同值的列?

如何删除 NA 值和上面和下面的行