tidyrを使ったデータの整理

データ整理にtidyverseを使った際の覚書。まずデータフレームをas_tibble()でtidy用の形式にする。

library(tidyverse)

air <- airquality
tidy.air <- as_tibble(air)

条件に合うケースの抽出

filter()関数を使うと良いらしい。

## 条件に合う行を抽出
air.May <- tidy.air %>%
  filter(Month==5) #5月のデータのみ取り出す

Ozone.mean <- mean(air$Ozone, na.rm=T)

air.high.Ozone <- tidy.air %>% # オゾンが平均より高いケースを取り出す
  filter(Ozone > Ozone.mean)

air.high.Ozone.May <- tidy.air %>% #複合条件もOK
  filter(Ozone > Ozone.mean, Month==5)

抽出されたケースを見ると, オゾンの値が平均(43くらい)よりも高いケースのみのデータセットが出来上がっている。

抽出されたケース