gpt4 book ai didi

r - 从 R 中的列表中提取向量

转载 作者:行者123 更新时间:2023-12-02 03:37:17 25 4
gpt4 key购买 nike

我已经尝试这样做了一段时间,但无法找到解决方案......

我有一个 list ,请说:

> a
[[1]]
[1] 10 30

[[2]]
[1] 15 20

[[3]]
[1] 12 15 30

$[[4]]
[1] 15 30 20

我想将第一个元素、第二个和第三个元素提取为向量。

我知道如何提取第一个和第二个元素:

first <- sapply(a, "[[", 1)
second <- sapply(a, "[[", 2)

但是当尝试提取第三个元素时,我收到错误,因为列表中的某些向量中没有第三个元素。

我怎样才能做到这一点?我应该向列表中只有两个值的向量添加零吗?

最佳答案

由于您要对原子向量进行子集化,因此应该使用[。然后,当您选择缺少的元素时,结果将自动为 NA。所以答案是:

sapply(a, `[`, 3)

这是一个例子:

a <- list(1:2, 3:4, 5:7, 8:10)
sapply(a, `[`, 3)
# [1] NA NA 7 10

关于r - 从 R 中的列表中提取向量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49778153/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com