如何修复 r 中的错误:维数不正确


在 R 中您可能遇到的错误是:

 Error in x[, 3]: incorrect number of dimensions

当您尝试在 R 中对某个对象进行子集化时,其维度多于该对象的维度,就会出现此错误。

本教程准确解释了如何修复此错误。

如何重现错误

假设 R 中有以下具有 10 个值的向量:

 #definevector
x <- c(3, 4, 7, 7, 14, 19, 22, 28, 29, 30)

该向量是一维的,但假设我们尝试在二维中进行子集化:

 #attempt to access value in first row and third column
x[, 3]

Error in x[, 3]: incorrect number of dimensions

#attempt to access value in third row and first column
x[3, ]

Error in x[3, ]: incorrect number of dimensions

我们收到错误,因为当向量只有一维时,我们尝试在二维中进行子集化。

如何修复错误

纠正此错误的最简单方法是简单地按单个维度进行子集化。例如,以下是如何访问向量的第三个值:

 #access third value in vector
x[3]

[1] 7

我们还可以一次访问向量的多个值。例如,以下是如何访问向量中位置 2 到 5 的值:

 #access values in positions 2 through 5
x[2:5]

[1] 4 7 7 14

由于我们仅按一维进行子集化,因此可以避免维数不正确的错误

其他资源

如何在 R 中修复:强制引入的 NA
如何在 R 中修复:索引越界
如何在 R 中修复:较长物体的长度不是较短物体长度的倍数
如何在 R 中修复:要替换的元素数量不是替换长度的倍数

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注