【发布时间】:2016-03-21 22:52:32
【问题描述】:
我正在尝试获取列表的每个子元素的 last 元素的值。列表的元素是不同长度的向量,所以最后一个子元素的索引在列表的元素之间不是恒定的。
我已经搜索过 SO,但只找到了那些希望获得的信息,for example, the second sub-element of every element。这对我没有帮助,因为列表的元素长度不定。
我只对不涉及使用 for 循环的解决方案感兴趣,因为我的列表长度 > 100 万。
示例数据:
x <- list(a = 1:5, b = 1:10, d = 9:11)
预期输出是一个列表:list(5, 10, 11)
【问题讨论】:
-
lapply(mtcars, function(x){x[length(x)]})?这在一定程度上取决于列表的结构。 -
另一个有趣的选项是
mapply('[[', x, lengths(x))