簡體   English   中英

如何刪除 R 中所有 NULL 值的行

[英]how to remove rows with all NULL values in R

我有以下矩陣:

id A    B    C
1  1    2    5
2  4    6    7
3  NULL NULL NULL
4  NULL 4    6

我只想刪除 id 為 3 的行。請注意,當我使用unique()時,它仍然保留,因為 id 本身是唯一的。

列可能是list ,因為vector中不存在NULL 如果是這樣的話

i1 <- Reduce(`&`, lapply(df1[-1], function(x) sapply(x, is.null)))
df1[!i1,]
#   id A B C
#1  1 1 2 5
#2  2 4 6 7
#4  4   4 6

如果NULL是字符"NULL" ,則選項是

i1 <- rowSums(df1[-1] == "NULL") == ncol(df1[-1])
df1[!i1,]

數據

df1 <- data.frame(id = 1:4, A = I(list(1, 4, NULL, NULL)),
     B = I(list(2, 6, NULL, 4)), C = I(list(5, 7, NULL, 6)))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM