如何删除具有 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<-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 值的“行”? [复制]的主要内容,如果未能解决你的问题,请参考以下文章
R语言dplyr包移除dataframe数据行实战(Remove Rows):按照条件移除数据行按照索引移除数据行删除包含NA值的所有数据行删除具体列包含NA值的数据行