如何从R中的嵌套列表中删除空元素

时间:2017-03-03 20:10:35

标签: r nested-lists

我正在努力从嵌套列表中删除一些元素。我很接近,但不知道如何应用更改。

列表片段是:

[[54]] [1] "\n"    ""    "World Health Organization ICTRP"

[[55]] [1] "\n"    "Sexes Eligible for Study:"    "All"

我有lapply(g, function(x) !(x == "" | x == "\n"))然后我得到:

[[54]] [1] FALSE FALSE  TRUE

[[55]] [1] FALSE  TRUE  TRUE

这是我想要缩小列表的正确索引(在false时)。 但不知道如何在列表中应用此功能。 g <- g[lapply(g, function(x) !(x == "" | x == "\n"))]之类的内容会返回错误invalid subscript type 'list'。 解决方案可能就在那里。

修改

我找到了间接解决方案 - 循环。对于一个[[]]元素,它是:

f <- g[[i]]
f <- f[lapply(f, function(x) !(x == "" | x == "\n"))==T]
f <- gsub("\n", "", f)

0 个答案:

没有答案