トップ 差分 一覧 ソース 検索 ヘルプ RSS ログイン 印刷

nest()

auditR

データを入れ子にする

あるデータをgroup_by()で分類したら、その分類された単位で一つのデータとして扱いたい。

そういうときは、nest()によってデータの階層を下げてやる。

gapminder::gapminder %>%
    group_by(continent, year) %>%   #1 データをグループ別にポイントした(並べ替えただけ)
    nest() %>%                                    #2 ネストにしてグループ単位のデータにする
    mutate(model = map(data, fun) ) #3 ↓参照

ネスト化されたデータを扱う

上記で、ネストしたデータはそれを一つのデータとして処理の対象にできる。ゆえにデータフレーム単位での処理ができる。

data はネストによって作られる単位であり、それを対象に関数funでマッピングして処理した結果を、modelという項目に入れている。

map_dbl()

map()を使った演算は、返り値がlist型になるので不便。よって、map_dbl(data, fun)を使って、返り値をdouble型にする。

ネストから戻す

dataはネストされているとすれば、元に戻すには、unnest()を使う。

 unnest(data)

によって、dataの階層の下のデータがバラバラに蘇る。

参考

Last updated 2022-12-10 | auditR (c) N.Nawata