R教科書繼續推廣使用lapply而不是循環。這甚至對於參數的功能,如使用lapply改變參數
lapply(somelist, f, a=1, b=2)
,但很容易,如果參數根據列表元素上改變什麼? 假設我somelist包括:
somelist$USA
somelist$Europe
somelist$Switzerland
加有anotherlist
與同一地區,我想用這些不斷變化的參數lapply使用?例如,當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))
不工作。也許別人也可以從這個錯誤中學習。
+1我看你打我到名字的想法 – 2011-06-06 14:32:40
是啊,這似乎像是一個最直接的方法來解決這個問題。我加了一些關於vs申請的討論,因爲他也是這麼要求的... – Vincent 2011-06-06 14:36:15