Tokyo.R #108
2023-09-02
ただしWeb版と比べてStep 3~が煩雑になりがち😖
2023年家計調査データベースを対象2
# ☐ tab: 表章項目 [1] <code, name, level>
# ☐ cat01: 品目分類(2020年改定) [690] <code, name, level, unit, parentCode>
# ☐ cat02: 世帯区分 [4] <code, name, level>
# ☐ area: 地域区分 [53] <code, name, level>
# ☐ time: 時間軸(月次) [462] <code, name, level>
#
# Please `activate()`.
activate(), filter()
でチョコレート関連品目を抽出
# ☐ tab: 表章項目 [1] <code, name, level>
# ☒ cat01: 品目分類(2020年改定) [2] <code, name, level, unit, parentCode>
# ☐ cat02: 世帯区分 [4] <code, name, level>
# ☐ area: 地域区分 [53] <code, name, level>
# ☐ time: 時間軸(月次) [462] <code, name, level>
#
# A tibble: 2 × 5
code name level unit parentCode
<chr> <chr> <chr> <chr> <chr>
1 010800130 352 チョコレート 5 円 010800000
2 010800140 353 チョコレート菓子 5 円 010800000
他の抽出処理をパイプ(|>, %>%
)でつなげられる
collect()
で統計データをダウンロード
列名が難解で列数が多い😖⏩データ整形したい❗
# A tibble: 6 × 18
tab_code tab_name tab_level cat01_code cat01_name cat01_level cat01_unit
<chr> <chr> <chr> <chr> <chr> <chr> <chr>
1 01 金額 "" 010800130 352 チョコレート 5 円
2 01 金額 "" 010800130 352 チョコレート 5 円
3 01 金額 "" 010800130 352 チョコレート 5 円
4 01 金額 "" 010800130 352 チョコレート 5 円
5 01 金額 "" 010800130 352 チョコレート 5 円
6 01 金額 "" 010800130 352 チョコレート 5 円
# ℹ 11 more variables: cat01_parentCode <chr>, cat02_code <chr>,
# cat02_name <chr>, cat02_level <chr>, area_code <chr>, area_name <chr>,
# area_level <chr>, time_code <chr>, time_name <chr>, time_level <chr>,
# 金額 <chr>
rekey(), select()
で収集データの列を指定できる
chocolate <- estat(statsDataId = "0003343671") |>
activate(tab) |> select() |> # 何も`select()`しない場合は列が消える
activate(cat01) |> rekey("品目分類") |> select(name) |>
filter(str_detect(name, "チョコレート")) |>
activate(cat02) |> rekey("世帯区分") |> select(name) |>
activate(area) |> rekey("地域区分") |> select(name) |>
filter(name == "全国") |>
activate(time) |> rekey("月次") |> select(name) |>
filter(str_detect(name, "2023年[1-3]月")) |>
collect(n = "金額")
The total number of data is 12.
列名がわかりやすくなり不要な列が消えた👍
# A tibble: 6 × 5
品目分類_name 世帯区分_name 地域区分_name 月次_name 金額
<chr> <chr> <chr> <chr> <chr>
1 352 チョコレート 二人以上の世帯(2000年~) 全国 2023年1月 869
2 352 チョコレート 二人以上の世帯(2000年~) 全国 2023年2月 1307
3 352 チョコレート 二人以上の世帯(2000年~) 全国 2023年3月 656
4 352 チョコレート 二人以上の世帯のうち勤労者世帯… 全国 2023年1月 998
5 352 チョコレート 二人以上の世帯のうち勤労者世帯… 全国 2023年2月 1491
6 352 チョコレート 二人以上の世帯のうち勤労者世帯… 全国 2023年3月 749
余談:2月はチョコレート消費が増えることがわかった!
chocolate |>
mutate(世帯区分_name = 世帯区分_name |>
str_remove("(2000年~)$") |>
as_factor(),
金額 = parse_number(金額)) |>
ggplot(aes(月次_name, 金額,
fill = 世帯区分_name)) +
geom_col(position = "dodge") +
scale_x_discrete(NULL) +
scale_y_continuous("1世帯あたり金額[円]",
labels = scales::label_comma()) +
scale_fill_brewer("世帯区分",
palette = "Paired") +
facet_wrap(~ 品目分類_name)