gpt4 book ai didi

r - 如何删除R中仅包含缺失值的行?

转载 作者:行者123 更新时间:2023-12-04 16:25:02 25 4
gpt4 key购买 nike

我有一个包含 11 列和 100000 行(例如)的大数据集,其中我的值为 1、2、3、4。其中 4 是缺失值。某些行完全丢失。即所有 11 列中有 4 个。例如

"4"  "4"  "4"  "4"  "4"  "4"  "4"  "4"  "4"  "4"   "4"

现在我需要的是只删除那些完全丢失的行。简单来说,我想保留缺失值小于 11 的行。我使用了 na.omit,但它在我的情况下不起作用。

提前致谢。

最佳答案

也许你最好的选择是利用 R 的习语来处理缺失,或者 NA值。编码后 NA您可以使用的值 complete.cases轻松实现您的目标。

创建一些带有缺失值的样本数据(即值为 4):

set.seed(123)
m <- matrix(sample(1:4, 30, prob=c(0.3, 0.3, 0.3, 0.1), replace=TRUE), ncol=6)
m[4, ] <- rep(4, 6)

将所有等于 4 的值替换为 NA :
m[m==4] <- NA
m
[,1] [,2] [,3] [,4] [,5] [,6]
[1,] 1 1 NA 2 2 2
[2,] 2 3 3 1 2 3
[3,] 3 2 2 1 2 3
[4,] NA NA NA NA NA NA
[5,] NA 3 1 NA 2 1

现在您可以使用各种处理 NA 的函数值。例如, complete.cases只会返回,你猜对了,完整的案例:
m[complete.cases(m), ]

[,1] [,2] [,3] [,4] [,5] [,6]
[1,] 2 3 3 1 2 3
[2,] 3 2 2 1 2 3

如需更多信息,请参阅 ?complete.cases?na.failstats包裹。

关于r - 如何删除R中仅包含缺失值的行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7185201/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com