【问题标题】:How can an object have two different classes in R? [duplicate]一个对象如何在 R 中有两个不同的类? [复制]
【发布时间】:2016-04-19 14:38:05
【问题描述】:

numeric 类包括子类integerdouble。有趣的是,变量的类取决于它的初始化方式。例如:

x <- c(0,0,0,0,0,1,1,1,1,1)
y <- rep(0:1, c(5,5))

x
# [1] 0 0 0 0 0 1 1 1 1 1
y
# [1] 0 0 0 0 0 1 1 1 1 1

class(x)
# [1] "numeric"
class(y)
# [1] "integer"

identical(x,y)
# [1] FALSE

我的问题:为什么 R 在示例中不强制 x 对整数进行分类?我认为这样做更有意义,因为xintegernumeric 向量,但numeric 向量不一定是整数向量。因此,强制x 成为整数类可能更直观,至少对我而言。我错过了什么吗?

【问题讨论】:

    标签: r integer double numeric


    【解决方案1】:

    当您键入0 时,R 将其理解为数字(双精度)。整数必须输入为0L。当然,: 被记录为返回整数值“如果from 是整数值并且结果可以用 R 整数类型表示”。

    【讨论】:

      猜你喜欢
      • 2014-01-12
      • 1970-01-01
      • 2021-07-15
      • 2022-06-16
      • 1970-01-01
      • 2021-02-24
      • 2014-03-23
      • 1970-01-01
      • 2013-06-23
      相关资源
      最近更新 更多