ブロック内の特定のデータフレームをループし、元のデータフレームから計算されたものを含む新しいデータフレームを返す関数をまとめようとしています。 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)
このコード動作しますが、私はそれは私が何をしたいのか伝わる期待していません。ありがとう!
あなたの質問はあまり明確ではありません。あなたのタイトルは、複数のデータフレームを返す関数を書く方法を知りたいが、あなたのコードは1つのデータフレームだけを返そうとしていることを示唆している。そして私はあなたのループ戦略のロジックを全く理解していません。おそらくあなたが実際に何をもっと詳細に説明していれば...? – joran
カップルのもの。 'dim(x)[1]'は 'nrow(x)'になります。あなたは各列の平均を見つけたいと思っていますか? 'apply(x、1、mean)'はそれを行います...しかし、[plyr](http://cran.r-project.org/web/packages/plyr/index.html)を見てください。データを分割して各フレームを処理します。 – Justin