首先,让我们来看看有多少个独特的类:
sapply(list, \(x) length(unique(x$class)))
# audi chevrolet dodge ford honda hyundai jeep land rover lincoln
# 2 3 3 3 1 2 1 1 1
# mercury nissan pontiac subaru toyota volkswagen
# 1 3 1 3 4 3
因此,有了这个数据,>= 5
不是一个很好的例子,因为它将得到0个结果.让我们做>= 3
,这样我们就可以期待一个非空的结果.
## with Filter
filteredlist <- Filter(list, f = function(x) length(unique(x$class)) >= 3)
length(filteredlist)
# [1] 7
## or with sapply and `[`
sapply_filter = list[sapply(list, \(x) length(unique(x$class))) >= 3]
length(sapply_filter)
# [1] 7
请注意,在您try lapply(list, function(x) length(unique(x$class) >= 5))
中,您有一个括号输入错误,您需要length(unique()) >= 5)
而不是length(unique(...) >= 5))