r - 在 R 中,如何过滤数据框以仅包含具有 >=2 个非 NA 值的行?

标签 r filter

假设我有一个数据框

      Grp1 Grp2 Grp3
Trt1    NA    1   NA
Trt2     2    3   NA
Trt3     4   NA    5

我想将其过滤为仅包含非 NA 值的数量大于某个总数(在本例中为 2)的行。所以对于这个例子,我想要一个结果:

      Grp1 Grp2 Grp3
Trt2     2    3   NA
Trt3     4   NA    5

最佳答案

您可以使用 rowSums()is.na() 来过滤数据帧。这会将您用于过滤的值强制转换为矩阵(因此对于非常大的数据帧可能会出现问题),但它应该可以解决问题。

df1[rowSums(!is.na(df1)) >= 2, ]
     Grp1 Grp2 Grp3
Trt2    2    3   NA
Trt3    4   NA    5

数据:

df1 <- read.table(header = T, text = "      Grp1 Grp2 Grp3
Trt1    NA    1   NA
Trt2     2    3   NA
Trt3     4   NA    5")

关于r - 在 R 中,如何过滤数据框以仅包含具有 >=2 个非 NA 值的行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59055957/

相关文章:

r - 更改 RFE 过程中 ROC 计算 (pROC) 的默认参数(插入符号)- R

r - 如何在 R Markdown 中自动实现文本和代码块之间的不同间距?

regex - R 中 (^|\\s)([A-Z]{1,3})(\\s|$) 和\\b[A-Z]{1,2}\\b 正则表达式之间的区别

filter - 和/或Jekyll上的where_exp表达式

r - 从R中多列的df中仅​​选择一个字符值

r - 如何对嵌套列表的元素进行分组?

r - 如何使用ggplot2绘制功率曲线

c# - EF Core HasQueryFilter 仅适用于过滤器表达式中的第一个值

python - PyQt - QTableView 通过隐藏行搜索

c# - 如何在 C# 中过滤 JSON 数组