卡在 R 中的一个错误。
Error in names(x) <- value :
'names' attribute must be the same length as the vector
这个错误是什么意思?
卡在 R 中的一个错误。
Error in names(x) <- value :
'names' attribute must be the same length as the vector
这个错误是什么意思?
本着@Chris W 的精神,试着复制你得到的确切错误。一个例子会有所帮助,但也许你正在做:
x <- c(1,2)
y <- c("a","b","c")
names(x) <- y
Error in names(x) <- y :
'names' attribute [3] must be the same length as the vector [2]
我怀疑您正在尝试为x
比您的名称向量 ( ) 短的向量 ( y
) 命名。
根据您在循环中所做的事情,%in%
运算符返回向量的事实可能是一个问题;考虑一个简单的例子:
c1 <- c("one","two","three","more","more")
c2 <- c("seven","five","three")
if(c1%in%c2) {
print("hello")
}
然后发出以下警告:
Warning message:
In if (c1 %in% c2) { :
the condition has length > 1 and only the first element will be used
如果您的 if 语句中的某些内容取决于特定数量的元素,并且它们不匹配,那么就有可能获得您看到的错误
我想用下面的例子来解释这个错误:
> names(lenses)
[1] "X1..1..1..1..1..3"
names(lenses)=c("ID","Age","Sight","Astigmatism","Tear","Class") 名称错误(lenses)=c("ID", "Age", "Sight ", "Astigmatism", "Tear", : 'names' 属性 [6] 必须与向量 [1] 的长度相同
由于许多属性不匹配而发生错误。我只有一个,但试图添加 6 个名字。在这种情况下,会发生错误。请参阅下面正确的一个:::::>>>>
> names(lenses)=c("ID")
> names(lenses)
[1] “身份证”
现在没有错误了。
我希望这个能帮上忙!
我已经看到了这样的错误,我解决了它。您的数据集中可能存在缺失值。每列中的观察数也必须相同。
我有这个,由于缩放的数字变量没有作为数字返回,而是作为矩阵返回。将任何转换后的变量恢复为 as.numeric() ,它应该可以工作。
我犯的导致此错误的错误是尝试在循环中重命名我不再在 SQL 中选择的列。这也可能是由于尝试在您计划选择的列中执行相同的操作而引起的。确保您尝试更改的列确实存在。
对我来说,这个错误是因为我的一些数据标题是两个名称,我将它们合并为一个名称,一切顺利。
我出于愚蠢的原因遇到了同样的错误,我认为是这样的:
在 R Studio 中工作时,如果您尝试将新对象分配给现有名称,并且当前使用 View() 打开了具有现有名称的对象,则会引发此错误。
关闭对象“查看”面板,然后它就可以工作了。