2

想象一下以下数据:

listA
[[1]]
[1] 1 2 3 4 5 6 7
[[2]]
[1] 1 2 3 4 5 6
[[3]]
[1] 1 2 3 4 5

如何选择:

listA[[1:2]][1:4]

1:2不允许使用there ,那么当知道该选择存在时(包括1:21:4部分),有什么方法可以选择这些?

我想要返回的内容:

listA
[[1]]
[1] 1 2 3 4
[[2]]
[1] 1 2 3 4
4

2 回答 2

3

只使用lapply,

R> l = list(A = 1:6, B=1:4, C = 1:5)
R> lapply(l[1:2], "[", 1:4)
$A
[1] 1 2 3 4

$B
[1] 1 2 3 4
于 2013-10-01T09:54:29.643 回答
1

您可能必须使用lapply.

lapply(listA, function(x) x[1:4])

如果您的实际列表较长,您可以通过 访问 listA 的前两个元素listA[1:2]。所以这应该工作:

lapply(listA[1:2], function(x) x[1:4])
于 2013-10-01T09:54:18.953 回答