Wenden Sie eine Funktion auf jede Zeile in einem Datenrahmen in R [Duplikat] an, die
Frage
Mögliches Duplikat:
So wenden Sie eine Funktion auf jede Zeile einer Matrix (oder eines Datenrahmens) in R an
Ich möchte eine Funktion auf jede Zeile in einem Datenrahmen anwenden. R wendet sie jedoch standardmäßig auf jede Spalte an. Wie erzwinge ich es sonst?
> 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
Ich wollte so etwas wie
1 2
2 0
3 3
Lösung
Sie wollen apply
(Siehe die Dokumente dafür). apply(var,1,fun)
gilt für Reihen, apply(var,2,fun)
gilt für Spalten.
> apply(a,1,min)
[1] 1 0 3
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow