Unerwartetes Funktionsverhalten in R anwenden
Ich habe ein überraschendes Verhalten von entdecktapply
Das frage ich mich, ob das jemand erklären kann. Nehmen wir eine einfache Matrix:
> (m = matrix(1:8,ncol=4))
[,1] [,2] [,3] [,4]
[1,] 1 3 5 7
[2,] 2 4 6 8
Wir können es also vertikal spiegeln:
> apply(m, MARGIN=2, rev)
[,1] [,2] [,3] [,4]
[1,] 2 4 6 8
[2,] 1 3 5 7
Dies gilt für dierev()
Vektorumkehrfunktion iterativ zu jeder Spalte. Aber wenn wir versuchen, rev by row anzuwenden, erhalten wir:
> apply(m, MARGIN=1, rev)
[,1] [,2]
[1,] 7 8
[2,] 5 6
[3,] 3 4
[4,] 1 2
.. eine Drehung um 90 Grad gegen den Uhrzeigersinn! Übernehmen liefert das gleiche Ergebnis mitFUN=function(v) {v[length(v):1]}
es ist also definitiv nicht revs schuld.
Irgendeine Erklärung dafür?