这是我们可以使用的列表:
list1 <- list(L1 = c(a = "abc", b = "bca"),
L2 = c(a = 1, b = 2))
在这种情况下,我需要一个列表,它只包含满足条件的列表,所以是L1。这是我如何手动检查的方法,但我不知道如何更进一步。
class(list1[[1]][[1]])
class(list1[[1]][[2]])
class(list1[[2]][[1]])
class(list1[[2]][[2]])
检查sapply
和列表子集中的is.character
list1[sapply(list1, is.character)]
# $L1
# a b
# "abc" "bca"
用Filter
代替base R
Filter(is.character, list1)