坚持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]
我怀疑你试图给一个比你的名字矢量( y )短的矢量( x )命名 .
y
x
根据你在循环中所做的事情, %in% 运算符返回向量的事实可能是一个问题;考虑一个简单的例子:
%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语句中的某些内容依赖于特定数量的元素,并且它们不匹配,则可能会获得您看到的错误
我看到了这样的错误,我解决了它 . 您的数据集中可能缺少值 . 每列中的观察数量也必须相同 .
我犯了这个错误的错误是试图重命名我不再在SQL中选择的循环中的列 . 这也可能是由于您尝试在计划选择的列中执行相同操作而导致的 . 确保您尝试更改的列实际存在 .
我想通过以下示例解释错误:
名称(镜头)[1]“X1..1..1..1..1..3”名称(镜头)= c(“ID”,“年龄”,“视线”,“散光”,“撕裂“,”类“)名称(镜头)中的错误= c(”ID“,”年龄“,”视线“,”散光“,”撕裂“,:”名称“属性[6]的长度必须与向量[1]
由于许多属性不匹配而发生错误 . 我只有一个,但试图添加6个名字 . 在这种情况下,会发生错误 . 请参阅下面正确的::::: >>>>
名称(镜头)= c(“ID”)名称(镜头)[1]“ID”
现在没有错误 .
我希望这个能帮上忙!
5 回答
本着@Chris W的精神,试着复制你得到的确切错误 . 一个例子会有所帮助,但也许你正在做:
我怀疑你试图给一个比你的名字矢量(
y
)短的矢量(x
)命名 .根据你在循环中所做的事情,
%in%
运算符返回向量的事实可能是一个问题;考虑一个简单的例子:然后发出以下警告:
如果if语句中的某些内容依赖于特定数量的元素,并且它们不匹配,则可能会获得您看到的错误
我看到了这样的错误,我解决了它 . 您的数据集中可能缺少值 . 每列中的观察数量也必须相同 .
我犯了这个错误的错误是试图重命名我不再在SQL中选择的循环中的列 . 这也可能是由于您尝试在计划选择的列中执行相同操作而导致的 . 确保您尝试更改的列实际存在 .
我想通过以下示例解释错误:
由于许多属性不匹配而发生错误 . 我只有一个,但试图添加6个名字 . 在这种情况下,会发生错误 . 请参阅下面正确的::::: >>>>
现在没有错误 .
我希望这个能帮上忙!