2015-07-12 99 views
0

我试图使用函数names设置向量的名称,但是R给了我一个错误。我想创建一个带有函数的矢量,然后为该矢量中的每个数字设置名称。我想通过只写一个订单来完成所有这一步(例如v(x))。这是我的例子代码脚本向量名称错误

v <- c(2,6,5) 
d <- function(x) x*9 

names(d(x))<-paste("q=", 1:3, sep="") 

和R说

Error in names(d(x)) <- paste("q=", 1:3, sep = "") : could not find function "d<-"

+0

请提供可重现的示例和所需的输出。 –

+0

也许尝试在设置名称之前实际将'div(x)'的结果存储在变量中...? – joran

+0

也许标记正确,关闭它并从未得到答复的列表中取消它?或者你还需要帮助吗? –

回答

1

我真的不知道你在做什么,但假设这接近它我可以重现错误:

qn <- 1:11 

div_1 <- function(x) { x <- x + 1 } 
div_2 <- function(x) { x <- x + 2 } 

div<- function(x) c(div_1(x)[1],div_2(x),div_1(x)[2:10]) 
x <- 1 
names(div(x))<- paste("q=", qn, sep="") 
# Error in names(div(x)) <- paste("q=", qn, sep = "") : 
# could not find function "div<-" 

我可以修复它(将其分成两步):

qn <- 1:11 

div_1 <- function(x) { x <- x + 1 } 
div_2 <- function(x) { x <- x + 2 } 

div<- function(x) c(div_1(x)[1],div_2(x),div_1(x)[2:10]) 

x <- 1 

v <- div(x) 
names(v)<- paste("q=", qn, sep="") 

# q=1 q=2 q=3 q=4 q=5 q=6 q=7 q=8 q=9 q=10 q=11 
# 2 3 NA NA NA NA NA NA NA NA NA 

这可能是一个错误,或者将名称分配给一个临时变量的一个限制(注意结果在您的版本中被抛出)。出于好奇,你在用div做什么?

+0

是的,我总是用相同的输出做出这一步。 Div是计算多样性(生物材料)的函数。 – Bobesh

+0

那么这是否解决了它? –

+0

不,但现在我修复了一个不同的问题。 v << - div(x),names(v)<-.... 这个工作,但我想有一个与此输出功能。现在我必须发布两个命令而不是一个。这些命令是div(x)和v – Bobesh