我有一个字符列表,在一些代码行之后,我的列表中有一个零字符的元素。如何提取具有零字符的元素的索引? 原始列表
blocks <- list(
c("A", "B"),
c("C","D", "E", "R", "T"),
c("X"),
c("N")
)
已转换的列表
blocks <- list(
character(0),
c("C","D", "E", "R", "T"),
c("X"),
c("N")
)
答案 0 :(得分:0)
不确定你想要什么,但我猜grep
可以做到这一点:
如果您想知道列表中的哪个元素是字母,请使用grep('A', block)
如果您想知道一个字母在整个列表中的位置,您可以尝试grep('A', unlist(blocks))
如果你想要别的东西,那就试试吧!
答案 1 :(得分:0)
如果我们想要获得具有character(0)
的元素的逻辑索引,我们可以在第二个&#39;
lengths
!lengths(blocks)
#[1] TRUE FALSE FALSE FALSE
lengths
是sapply(blocks, length)
的便捷包装器,速度更快。
lengths(blocks)
#[1] 0 5 1 1
为第一个length
元素返回list
0。通过否定(!
),0
被强制转移到TRUE
,其他所有被强制为FALSE
。