2016-09-18 11 views
2

各ループに対して、データセットの行から新しい入力パラメータを受け取り、各ループに対して別々の結果を提供するように関数を適用したいと思います。データフレームの各行の繰り返し機能

私はこのようなデータセット持っているとしましょう:関数がために別々の行ごとに合計をカウントするように、私は次のような処理をautomizeしたい

loop<-function(a,b,c,d){ 
sm <- sum(a,b,c,d) 
return(sm) 
} 

df<-data.frame(A = 7:11, B = 1:5, C = 4:8, D = 10:14) 

機能を

loop (df[1,1],df[1,2],df[1,3],df[1,4]) 
loop (df[2,1],df[3,2],df[3,3],df[3,4]) 
loop (df[3,1],df[3,2],df[3,3],df[3,4]) 
loop (df[4,1],df[4,2],df[4,3],df[4,4]) 
loop (df[5,1],df[5,2],df[5,3],df[5,4]) 

私は使用しようとしましたapply funcしかし、私はそれを正しく行うことはできません。誰かが私に解決策をアドバイスできますか?ありがとうございました。

+0

それとも別のオプションを試し '削減される( "+"、DF)' – akrun

+0

あなたがしたい場合はオリジナルのdf: '' df%>%mutate(ROWSUM = rowSums(。)) '' –

答えて

4

使用rowSums

rowSums(df) 
#[1] 22 26 30 34 38 

それでもloop機能を使用したい場合は、この

mapply(loop,df[,1],df[,2],df[,3],df[,4]) 
#[1] 22 26 30 34 38 
関連する問題