我有一个列表,其中包含多个列表/向量:
但是这不适用于内部元素的长度,而是适用于外部列表元素的长度。预期输出为:
list(c("cat1", "cat6", ""), c("cat5", "cat3", "cat4"), c("cat6",
"cat4", ""), c("cat5", "cat1", "cat2", "cat4"), c("cat6", "cat3",
"cat2"))
我正在寻找一种优雅的方法来删除内部元素,例如nchar=0的第三个元素,就像第一个列表中的第3个元素(值为“”)。
我已经尝试过:
l[lapply(l,length)>0]
但是这不适用于内部元素的长度,而是适用于外部列表元素的长度。预期输出为:
list(c("cat1", "cat6"), c("cat5", "cat3", "cat4"), c("cat6",
"cat4"), c("cat5", "cat1", "cat2", "cat4"), c("cat6", "cat3",
"cat2"))
希望能得到您的帮助
sapply(l, function(x) x[nchar(x) > 0])
。 - Gopala