我试图把一个函数放在一起,这个函数将通过一个给定的数据框循环并返回一个新的数据帧,其中包含从原始计算的东西。 x的长度每次都会有所不同,实际的问题在函数中会有更多的循环。新十岁上下到R和一直没能找到什么有用的(我不认为使用名单将帮助)返回来自函数R的多个数据帧
func<-function(x){
tmp # need to declare this here?
for (i in 1:dim(x)[1]){
tmp[i]<-ave(x[i,]) # add things to it
}
return(tmp)
}
df<-cbind(rnorm(10),rnorm(10))
means<-func(df)
此代码不工作,但我希望它跨越了我想做的事得到。谢谢!
你的问题不是很清楚(对我而言)。您的标题暗示您想知道如何编写返回多个数据框的函数,但您的代码只会尝试返回一个数据框。我完全不理解你的循环策略的逻辑。也许如果你更详细地解释你实际上在做什么......? – joran
夫妇的事情。 dim(x)[1]'可以是'nrow(x)'。你想找到每一行的平均值? 'apply(x,1,mean)'会做到这一点......但请看一下[plyr](http://cran.r-project.org/web/packages/plyr/index.html)分割data.frames和处理每一块。 – Justin