gpt4 book ai didi

r - 如何测试对象是否为向量

转载 作者:行者123 更新时间:2023-12-03 10:25:56 24 4
gpt4 key购买 nike

如何测试对象是否为向量,即模式 logical , numeric , complexcharacter ? is.vector 的问题是它也返回 TRUE对于列表和其他类型:

> is.vector(list())
[1] TRUE

我想知道它是否是原始类型的向量。是否有 native 方法,还是必须使用存储模式?

最佳答案

只有原始函数,所以我假设您想知道向量是否是原子类型之一。如果你想知道一个对象是否是原子的,使用 is.atomic .

is.atomic(logical())
is.atomic(integer())
is.atomic(numeric())
is.atomic(complex())
is.atomic(character())
is.atomic(raw())
is.atomic(NULL)
is.atomic(list()) # is.vector==TRUE
is.atomic(expression()) # is.vector==TRUE
is.atomic(pairlist()) # potential "gotcha": pairlist() returns NULL
is.atomic(pairlist(1)) # is.vector==FALSE

如果您只对您提到的原子类型的子集感兴趣,最好明确测试它们:
mode(foo) %in% c("logical","numeric","complex","character")

关于r - 如何测试对象是否为向量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19501186/

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