【问题标题】:what does accessing zero element in R do?访问 R 中的零元素有什么作用?
【发布时间】:2013-04-08 15:46:08
【问题描述】:

如果我有一个向量a<-c(3, 5, 7, 8)

然后运行a[1],不出意外我会得到 3 但是如果我运行a[0],我基本上会得到numeric(0)

这是什么意思? 这有什么作用? 出于正常原因,我该如何使用它?

【问题讨论】:

  • R 与 C 不同,具有基于 1 的索引。 numeric(0) 意味着空向量。您可以尝试 numeric(1)、numeric(2) 等。

标签: r


【解决方案1】:

其他人已经回答了 x[0] 的作用,所以我想我会详细说明它的用途:生成测试用例。这对于确保您的函数能够处理用户有时会意外产生的异常数据结构变体非常有用。

例如,它可以很容易地生成 0 行和 0 列的数据框:

mtcars[0, ]
mtcars[, 0]

当子集出错时会出现这些情况:

mtcars[mtcars$cyl > 10, ]

但在您的测试代码中,标记您是故意这样做很有用。

【讨论】:

  • 次要注意 - 你需要像 identical(mtcars[mtcars$cyl > 10,], mtcars[0,]) 这样使用 smth 来进行测试
【解决方案2】:

http://cran.r-project.org/doc/manuals/r-release/R-lang.html#Indexing-by-vectors

如您所见:一种特殊情况是零索引,它具有空值:x[0] 是一个空向量,否则在正索引或负索引中包含零与省略它们的效果相同。

【讨论】:

    猜你喜欢
    • 2019-01-14
    • 2017-05-20
    • 2016-08-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-16
    • 2021-12-20
    • 2014-09-24
    相关资源
    最近更新 更多