[tidyverse](https://tidyverse.org/) は、データサイエンス向けに設計された [[R]] パッケージ群である。共通の設計思想・文法・データ構造を共有し、パイプ演算子 (`|>`) による連結で、読み込みから整形・可視化までを一貫した宣言的スタイルで記述できる。
[[Hadley Wickham]] を中心に RStudio (現 [[Posit]]) で開発され、2016 年に「tidyverse」の名称で統合された。各変数を列・各観測を行に揃えた [[tidy data]] を中核に据え、[[Base R]] と並ぶもうひとつの主流スタイルとして定着している。
## インストール
```r
renv::install("tidyverse")
```
## コアパッケージ
`library(tidyverse)` で一括ロードされる 9 つのパッケージ 。
| パッケージ | 用途 |
| ----------- | -------------------------------------------------------------------------- |
| [[ggplot2]] | [[Grammar of Graphics]] に基づくレイヤー構造でデータを可視化する |
| [[dplyr]] | 一貫した動詞関数でデータフレームの行・列を操作する |
| tidyr | 一貫した関数群でデータを tidy data の形に整形する |
| readr | 型推論を備えた高速な関数群で矩形データ (CSV / TSV / FWF) を読み込む |
| purrr | 関数型プログラミングのスタイルでベクトル・リストに関数を適用する |
| [[tibble]] | 表示・部分集合化を現代的に再設計したデータフレーム型 (`tbl_df`) を提供する |
| stringr | 一貫した関数群で文字列の検索・置換・抽出を行う |
| forcats | 一貫した関数群で因子型 (カテゴリカル変数) の並べ替え・統合・再ラベルを行う |
| [[lubridate]] | 一貫した関数群で日付・日時のパース・抽出・加減算を行う |
## 関連ノート
- **[派生]** [[R 言語では日本語カラム名をバッククオートでエスケープする]]: `select()` `aes()` など NSE を使う関数で日本語列名を扱うときに必要になる構文ルール