Rの教科書は、ループの代わりにラップの使用を促進し続けています。これは、次のような引数を持つ関数でも簡単です。
lapply(somelist, f, a=1, b=2)
しかし、リスト要素に応じて引数が変わるとどうなりますか?私のsomelistが次のもので構成されていると仮定します。
somelist$USA
somelist$Europe
somelist$Switzerland
さらにanotherlist
、同じリージョンがあり、これらの変化する引数を重ねて使用したいですか?これは、たとえばfが比率計算の場合に役立ちます。
lapply(somelist, f, a= somelist$USA, b=anotherlist$USA)
これらの領域を効率的に実行するループ以外の方法はありますか?
編集:私の問題は、以前に作成した関数をインデックスなしで使用しようとしたことのようです...
ratio <-function(a,b){
z<-(b-a)/a
return(z)
}
につながった
lapply(data,ratio,names(data))
これは機能しません。たぶん他の人もこの間違いから学ぶことができます。