如果列2:nrow(df)在r中都包含NA,则删除行

时间:2017-08-03 15:21:11

标签: r na

我有一个df,我想删除列2:nrow(df)ALL包含NA的行。该df是包含水质参数的一个示例。但是在我的代码中,df的大小将根据每个查询可用的参数数量而变化。有些可能有4个像下面的df,有些可能有6个。

       DATE_TIME      WT SC DO SAL
1 2017-05-31 11:00:00 NA NA NA NA
2 2017-05-31 11:15:00 NA NA NA NA
3 2017-05-31 11:30:00 NA NA NA NA
4 2017-06-13 12:45:00 NA 30 19 5.4
5 2017-07-05 11:45:00 NA NA NA 4.9

我希望输出看起来像:

       DATE_TIME      WT SC DO SAL
1 2017-06-13 12:45:00 NA 30 19 5.4
2 2017-07-05 11:45:00 NA NA NA 4.9

我试过使用类似的东西:

colnum <- ncol(df)  #count col because my df size will be variable
df <-df[complete.cases(df[ , 2:colnum]),]

但这只留给我:

       DATE_TIME      WT SC DO SAL
1 2017-06-13 12:45:00 NA 30 19 5.4

任何快速和肮脏的东西都会受到赞赏! 干杯!不给我一个-1的双重欢呼;)

我也看到有一些类似的问题,但我不认为它们完全相同。如果所有列都包含NA,则答案无法删除该行,因为日期列永远不会是NA。如果每列col2:ncol(df)包含NA,则必须删除行。希望这有帮助吗?

0 个答案:

没有答案