如何删除行中最多包含6个不是non NA的变量的行

时间:2019-03-05 12:52:02

标签: r algorithm statistics

您好,所以我想从数据框中删除一些行。在数据帧5中,变量始终具有值。并且其他可能具有或具有NA值。因此,我只想保留至少具有6个变量的行。

我尝试使用dropna(df,thresh = 6),但是我认为这仅在python中有效,我找不到R的语法。

谢谢

1 个答案:

答案 0 :(得分:0)

这就是我要做的:

my_df[rowSums(!is.na(my_df)) >= 6, ]

说明:

is.na(my_df) 测试my_df中的哪些单元格是NA,并返回尺寸与my_df相同的逻辑矩阵(符号!用于否定),

rowSums(!is.na(my_df))然后将返回NA中每一行中非my_df值的数量,

最终,rowSums(!is.na(my_df)) >= 6将是一个逻辑矢量,指示哪些行具有至少6个非NA值,这将是我们用来过滤数据帧行的掩码