第4章 Rベースで抽出・集計 ・ ノック 48 / 100 ・ [[000 - はじめに(使い方と目次)|目次]]<br>
← 前 [[047 - 必要な列だけ選ぶ]] ・ 次 → [[049 - 計算した新しい列を加える]]
> [!info] `order()` で行の順序を並べ替える
> データを大きい順・小さい順に並べたいときは `order()` を使います。`order(ベクトル)` は「このベクトルを昇順にしたとき、元の何番目が何番目に来るか」という行番号を返します。その行番号をデータの行の指定に使うことで並べ替えができます。大きい順(降順)にするには `decreasing = TRUE` を追加します。
## 問題
`iris` を `Sepal.Length` の大きい順に並べ替えて、先頭6行を表示してください。
> [!tip] ヒント
> `order()` の結果をそのまま `iris[行番号, ]` の行部分に渡します。降順は `decreasing = TRUE` オプションで指定します。
> [!success]- 回答を見る
> ```r
> head(iris[order(iris$Sepal.Length, decreasing = TRUE), ])
> ```
> ```
> Sepal.Length Sepal.Width Petal.Length Petal.Width Species
> 132 7.9 3.8 6.4 2.0 virginica
> 118 7.7 3.8 6.7 2.2 virginica
> 119 7.7 2.6 6.9 2.3 virginica
> 123 7.7 2.8 6.7 2.0 virginica
> 136 7.7 3.0 6.1 2.3 virginica
> 106 7.6 3.0 6.6 2.1 virginica
> ```
> 最も大きい Sepal.Length は 7.9 で、132行目のデータです。上位6行はすべて virginica 種であることが確認できます。