首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >R-编程: seq.default(1,data_length)中的错误:'to‘必须长度为1

R-编程: seq.default(1,data_length)中的错误:'to‘必须长度为1
EN

Stack Overflow用户
提问于 2017-09-20 11:32:01
回答 1查看 15.4K关注 0票数 1

嗨,我正在尝试使用以下函数计算数据变量的组标准化值。

代码语言:javascript
复制
groupStandardise <- function(variables, groupvariable)
{
 # find out how many variables we have
 variables <- as.data.frame(variables)
 numvariables <- length(variables)
 # find the variable names
 variablenames <- colnames(variables)
 # calculate the group-standardised version of each variable
 for (i in 1:numvariables)
 {
    variablei <- variables[[i]]
    variablei_name <- variablenames[[i]]
    variablei_Vw <- calcWithinGroupsVariance(variablei, groupvariable)
    variablei_mean <- mean(variablei)
    variablei_new <- (variablei - variablei_mean)/(sqrt(variablei_Vw))
    data_length <- nrow(variablei)
    if (i == 1) { variables_new<-data.frame(row.names=seq(1,data_length))}
    variables_new[`variablei_name`] <- variablei_new
 }
 return(variables_new)
 }

同时将函数调用为

代码语言:javascript
复制
groupstandardisedconcentrations <- groupStandardise(data[,2:14], data[,1])

我收到了这个错误

seq.default(1,data_length)中的错误:'to‘必须长度为1

str(data)的输出如下(v1是组变量):

代码语言:javascript
复制
'data.frame':   45 obs. of  11 variables:
 $ V1 : int  2 3 3 2 3 2 2 2 3 2 ...
 $ V2 : num  1.3243 -2.4546 0.1352 0.0676 -1.1901 ...
 $ V3 : num  0.913 -2.644 0.663 1.217 -0.409 ...
 $ V4 : num  -1.863 1.965 -0.698 -0.945 0.617 ...
 $ V5 : num  -0.574 1.031 -0.308 -0.574 0.354 ...
 $ V6 : num  -0.8963 2.5702 0.0736 -1.3671 0.9045 ...

有解决这个问题的建议吗?

EN

Stack Overflow用户

发布于 2017-09-20 12:45:48

如果该对象是一维向量,则此data_length <- nrow(variablei)输出一个NULL,然后当您执行此variables_new<-data.frame(row.names=seq(1,data_length))时,您将请求R给出从1NULL的序列,从而产生错误。

您可以通过seq(1,NULL)复制错误

根据您的目标(您必须检查您的程序是否符合您的目的),您可以添加一个条件,这样错误就不会发生。

您可以将if (i == 1)更改为if (i == 1 & !is.null(data_length))

票数 2
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46320906

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档