Frage

Ich versuche, die seltsame Überlappung von stats::reorder vs Hmisc::reorder herum zu erhalten.

Ohne Hmisc loaded bekomme ich das Ergebnis, das ich will, das heißt einen ungeordneten Faktor:

> with(InsectSprays, reorder(spray, count, median))
 [1] A A A A A A A A A A A A B B B B B B B B B B B B C C C C C C C C C C C C D D
[39] D D D D D D D D D D E E E E E E E E E E E E F F F F F F F F F F F F
attr(,"scores")
   A    B    C    D    E    F 
14.0 16.5  1.5  5.0  3.0 15.0 
Levels: C E D A F B

Jetzt nach dem Laden Hmisc das Ergebnis ist ein geordneter Faktor:

> library(Hmisc)
Loading required package: survival
Loading required package: splines

Attaching package: 'Hmisc'

The following object(s) are masked from 'package:survival':

    untangle.specials

The following object(s) are masked from 'package:base':

    format.pval, round.POSIXt, trunc.POSIXt, units

> with(InsectSprays, reorder(spray, count, median))
 [1] A A A A A A A A A A A A B B B B B B B B B B B B C C C C C C C C C C C C D D
[39] D D D D D D D D D D E E E E E E E E E E E E F F F F F F F F F F F F
Levels: C < E < D < A < F < B

Im Aufruf stats::reorder direkt, ich jetzt aus irgendeinem Grund eine geordnete Faktor erhalten.

> with(InsectSprays, stats::reorder(spray, count, median))
 [1] A A A A A A A A A A A A B B B B B B B B B B B B C C C C C C C C C C C C D D
[39] D D D D D D D D D D E E E E E E E E E E E E F F F F F F F F F F F F
Levels: C < E < D < A < F < B

Die Angabe, dass ich eine ungeordneten Faktor führt zu einem Fehler muß, dass stats::reorder was darauf hindeutet, verwendet wird, nicht wahr?

> with(InsectSprays, stats::reorder(spray, count, median, order = FALSE))
Error in FUN(X[[1L]], ...) : unused argument(s) (order = FALSE)

Also wirklich die Frage ist wie bekomme ich einen ungeordneten Faktor mit Hmisc geladen?

War es hilfreich?

Lösung

Sie können tun

with(InsectSprays, stats:::reorder.default(spray, count, median))

Beachten Sie, dass Statistiken :: Neuordnungs ist ein 'Absender' so in Ihrem Beispiel

with(InsectSprays, stats::reorder(spray, count, median))

schließlich Hmisc :: reorder.factor statt Statistiken genannt :: reorder.default.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top