gpt4 book ai didi

r - 为什么 is.vector() 为列表返回 TRUE?

转载 作者:行者123 更新时间:2023-12-03 11:00:47 26 4
gpt4 key购买 nike

我是 R 初学者。浏览R文档,偶然发现了这句话?is.vector :
“如果 mode = "any",is.vector 可能会为原子模式、列表和表达式返回 TRUE。”

我只是好奇 - 为什么?我读过的所有文档都指出列表和向量是两种不同的数据类型。是否有一些我没有得到的更深层次的 R 数据类型概念?

最佳答案

列表(在大多数情况下)本身就是一个向量。来自 ?list 的帮助文件:“R 内部的大多数列表都是通用向量,而传统的点对列表(如在 LISP 中)是可用的,但用户很少看到(除了作为函数的形式)。”

这意味着您可以使用 vector为列表预先分配内存:

x <- vector("list", 3)
class(x)
[1] "list"

现在为列表中的第二个元素分配一个值:
x[[2]] <- 1:5

x

[[1]]
NULL

[[2]]
[1] 1 2 3 4 5

[[3]]
NULL

?list?vector更多细节。

关于r - 为什么 is.vector() 为列表返回 TRUE?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6032772/

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