可能性のある複製:
Rの行列(またはデータフレーム)のすべての行に関数を適用する方法
データフレームの各行に関数を適用したいのですが、Rはデフォルトで各列に適用します。それ以外の場合はどうすれば強制できますか?
> a = as.data.frame(list(c(1,2,3),c(10,0,6)),header=T)
> a
c.1..2..3. c.10..0..6.
1 1 10
2 2 0
3 3 6
> sapply(a,min)
c.1..2..3. c.10..0..6.
1 0
みたいなものが欲しかった
1 2
2 0
3 3
apply
が必要です(ドキュメントを参照してください)。 apply(var,1,fun)
は行に適用され、apply(var,2,fun)
は列に適用されます。
> apply(a,1,min)
[1] 1 0 3