我的数据集由数字列组成,其中有一些缺失(即 NA)值。我想找到完全由 NA 值组成的行。例如:
library(tidyverse)
library(magrittr)
frm <- tribble(
~A, ~B, ~C,
11, 22, 33,
14, NA, 37,
10, 29, 36,
NA, NA, NA,
18, 28, 38
)
我可以使用 is.na() 和 all() 处理 for 循环中的每一行,但我想找到一个“整洁”的解决方案。这是我能做的最好的事情:
frm %>%
rowwise %>%
summarize(all_values_missing = is.na(A) & is.na(B) & is.na(C))
但是这种方法无法扩展到具有大量列和重要列名的数据集。任何想法将不胜感激!
最佳答案
使用c_across
函数来提供帮助。例如
frm %>%
rowwise %>%
summarize(all_values_missing = all(is.na(c_across())))
如果您只需要列的子集,c_across()
也将接受整洁的选择器。
关于r - 使用 rowwise() 时如何处理整行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69805092/