第5章 tidyverse(dplyr)で再現 ・ ノック 72 / 100 ・ [[000 - はじめに(使い方と目次)|目次]]<br>
← 前 [[071 - 個数を数える]] ・ 次 → [[073 - 列名を変える]]
> [!info] distinct() は重複する値を除いてユニークな値だけを返す動詞です
> **`distinct()`**(ディスティンクト)は、指定した列の中で重複している値を除き、ユニーク(一意)な値だけを残す動詞です。「この列にどんな値が入っているか」を確認したいときに便利です。
>
> Rベースでは `unique(iris$Species)` で重複なしの値一覧をベクトルとして取得していました。`distinct()` の結果はデータフレームとして返るので、後続の処理につなげやすくなります。引数に列名を書かない場合は、全列の組み合わせで重複を除きます。
## 問題
`iris` の Species 列に含まれるユニークな値を `distinct()` で調べてみましょう。
> [!tip] ヒント
> `distinct(データフレーム, 列名)` の形で書きます。
> [!success]- 回答を見る
> ```r
> library(dplyr)
> distinct(iris, Species)
> ```
> ```
> Species
> 1 setosa
> 2 versicolor
> 3 virginica
> ```
> Rベースでは `unique(iris$Species)` でベクトルとして取得していましたが、`distinct()` はデータフレーム形式で返すため、そのまま他の処理につなげられます。