R - 对于数据框中的每一行,如何检查是否至少有一列不是 NA? [英] R - For each row in a data frame, how to check if at least one column is not NA?
本文介绍了R - 对于数据框中的每一行,如何检查是否至少有一列不是 NA?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个这样的数据框
col_1 col_2 col_3 col_4
12344 53445 34335 AAA
12545 56565 12123 AAB
NA 54556 32323 ABB
NA NA NA NA
43434 65654 NA ABA
我想获取至少具有非 NA 值的行,或者换句话说,应删除具有所有 NA 的行(在本例中为第 5 行).你能给我一些建议吗?
I want to get rows with at least non-NA value, or put another way, rows with all NAs (row 5 in this case) should be removed. Can you give me some advice?
推荐答案
如果您的数据框名为 dta:
if your data frame is named dta:
dta[rowSums(!is.na(dta)) > 0, ]
这通过检查每个项目是否is.na
,取相反的!
,取rowSums
,找到那些>>0
然后使用 [
对它们进行子集.
This works by checking if each item is.na
, taking the opposite !
, taking the rowSums
, finding those that are > 0
and then using [
to subset them.
这篇关于R - 对于数据框中的每一行,如何检查是否至少有一列不是 NA?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文