2016-02-26 69 views

回答

1

我强烈建议您重新考虑您的代码;通常有更好的,更“类似R”的方式来完成通常不需要这类操作的事情。但

assign(NAME, '[<-'(get(NAME),i,5)) 

也许

eval(substitute(x[i]<-5, list(x=as.name(NAME)))) 

可以工作。这会将元素2更改为5.更好的设计可能是让要动态更改的向量位于已命名列表中。

dd <- list( 
    a = c(0,1) 
) 
NAME<-"a"; 
i<-2; 
dd[[NAME]][i]<-5 
dd$a 
相关问题