我試圖對兩個數據框的所有行和列應用函數,但我不知道如何使用apply來解決它。 我想下面的腳本解釋了我打算做的事情和我試圖解決它的方式。任何建議將受到熱烈的讚賞!請注意,simplefunction
只是一個簡單示例函數。適用於R中的兩個不同數據框的所有列和行
# some data and a function
df1<-data.frame(name=c("aa","bb","cc","dd","ee"),a=sample(1:50,5),b=sample(1:50,5),c=sample(1:50,5))
df2<-data.frame(name=c("aa","bb","cc","dd","ee"),a=sample(1:50,5),b=sample(1:50,5),c=sample(1:50,5))
simplefunction<-function(a,b){a+b}
# apply on a single row
simplefunction(df1[1,2],df2[1,2])
# apply over all colums
apply(?)
## apply over all columns and rows
# create df to receive results
df3<-df2
# loop it
for (i in 2:5)df3[i]<-apply(?)
也許你應該更精確地定義「適用於所有行和列」的含義,並提供真正可重複的功能和所需的輸出。 – juba 2013-03-26 15:38:55
對不起,誤會。我編輯了上面的問題,包括這只是一個示例函數。該代碼是可重複的,我打算保持簡單,以便使其他人也可以使用。 – Joschi 2013-03-26 15:45:45
+1提供一個簡單的可重複的例子(儘管它導致的誤解!)。 – 2013-03-26 15:46:53