简单回顾许多不同命名的变量

时间:2013-10-27 23:54:18

标签: r list function paste assign

我正在尝试创建一个类似这样的函数:

我希望“n”是函数中x和u的数量。

例如,

n=3

Myfunction=function(x,n){


 assign(paste("u",i,sep=""),x[i])

return(sum(u1+u2+...un))

}

在我通过u50创建我的u1之后,我怎么能回复它们以便我可以将它们归结为返回函数? 使用paste(“u”,i,sep =“”)创建一个新的字符串对象,而不是以前创建的变量。

感谢您的时间和帮助!

1 个答案:

答案 0 :(得分:1)

 x=1:3
 n=3

 Myfunction=function(x,n){
    for (i in 1:n)  assign(paste("u",i,sep=""),x[i])
    return(sum(unlist(mget(paste("u",1:n,sep="")))))                 
 }

 Myfunction(x,n)

 #gives 6
顺便说一句:我认为这只是你的一些复杂问题的简约例子。否则,当然,总结一些值会有一个更短的解决方案。 ;)