Rのreorderについて

いままでRのreorderをわかっていなかったアンドあまり記事がないようなので(みんな知ってるからかも...)これについて書いてみます。
この関数はfactorの並び(boxplotの時に横軸にすることがまず思い浮かびます)を変えたい時に使うもののようなのですが、なぜか手持ちのR書籍ではこのreorderという関数について書かれているものが無いようでした(もちろんhelpにはあります)。

helpのexamplesの通りなんですが書いてみます。

> library(graphics)
> head(InsectSprays)
  count spray
1    10     A
2     7     A
3    20     A
4    14     A
5    14     A
6    12     A

まずこのInsectSpraysというデータについてですが、これは殺虫スプレーAからFをプシーっとやって死んだ虫の数をまとめたものぽいです。
普通にこのデータでboxplotを書けと言われるとこんな感じで各spray毎に殺虫数countのboxを作ると思います。

boxplot(count ~ spray, data=InsectSprays)


reorderのhelpのexamplesではこれをmedian順に各spray(factor)を並べ替えています。

bymedian <- with(InsectSprays, reorder(spray, count, median))

こうするとlevelsの並びがmedianの昇順になった、またアトリビュート$scoresに各spray毎のmedianの値を持った、bymedianというfactorができます。

> class(bymedian)
[1] "factor"
> attributes(bymedian)
$levels
[1] "C" "E" "D" "A" "F" "B"

$class
[1] "factor"

$scores
   A    B    C    D    E    F 
14.0 16.5  1.5  5.0  3.0 15.0 

でbymedianを使ってboxplotを書くと

boxplot(count ~ bymedian, data = InsectSprays)


という感じになります。

以上、無知を晒すエントリでしたとさ、と。