G7 (Group of Seven)、フランス(France), アメリカ(United States), 英国(United Kingdom), ドイツ(Germany), 日本(Japan), イタリア(Italy), カナダ(Canada), と ヨーロッパ連合(EU, non-enumerated member) の軍事費と、教育費について、基本的なデータの分析を行う。
G7 <- c("FR", "US", "GB", "DE", "JP", "IT", "CA", "EU")
これまでとも同じように二つのパッケージを読み込み(load)ます。
library(tidyverse)
library(WDI)
Word など、他の文書作成のため、準備をします。
library(showtext)
knitr::opts_chunk$set(fig.showtext=TRUE)
変数名を指定します。ここでは、refugee_asylum
と、refugee_origin
としました。なるべくわかりやすい名前にします。
この変数名は、今後使いますから、重要です。一応、例として、わたしが使った、変数名を書いてあります。他の変数名を使っても構いません。extra = TRUE
とすると、地域名(region)や、収入レベル(income)などが追加されます。
df_military_ed <- WDI(country = G7, indicator = c(military_usd = "MS.MIL.XPND.CD",
military_gov = "MS.MIL.XPND.ZS",
education_gov = "SE.XPD.TOTL.GB.ZS"),
extra = TRUE) |>
select(country, iso2c, year, military_usd, military_gov, education_gov, region)
df_military_ed
write_csv(df_military_ed, "data/military_ed.csv")
df_military_ed <- read_csv("data/military_ed.csv")
上のコードがうまく動かない時は、次の、コードチャンクを、実行してください。
df_military_ed <- read_csv("https://raw.githubusercontent.com/ds-sl/intro2r/main/docs/ges001/data/military_ed.csv")
Rows: 504 Columns: 7── Column specification ─────────────────────────────────────────────────────────────────
Delimiter: ","
chr (3): country, iso2c, region
dbl (4): year, military_usd, military_gov, education_gov
ℹ Use `spec()` to retrieve the full column specification for this data.
ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.
df_military_ed
df_military_ed_long <- df_military_ed |> pivot_longer(military_usd:education_gov)
df_military_ed_long |> drop_na(value) |>
ggplot(aes(year, fill = name)) + geom_bar() + labs(title = "変数、年毎のデータの数")
気づいたこと・疑問
7カ国+EU なので、まずは、別々の指標ごとに、経年変化を調べる。
df_military_ed |> drop_na(military_usd) |>
ggplot(aes(year, military_usd, col = iso2c, linewidth = iso2c)) + geom_line() +
scale_y_log10() + scale_linewidth_manual(values = c(0.3,0.3,0.3,0.3,0.3,0.3,0.7,0.3)) +
labs(title = "G7各国の軍事費(USD)の経年変化(log10 スケール)")
df_military_ed |> drop_na(military_gov) |>
ggplot(aes(year, military_gov, col = iso2c, linewidth = iso2c)) + geom_line() + scale_linewidth_manual(values = c(0.3,0.3,0.3,0.3,0.3,0.3,0.7,0.3)) +
labs(title = "G7各国の軍事費(政府の総支出に対する率(%))の経年変化")
df_military_ed |> drop_na(education_gov) |>
ggplot(aes(year, education_gov, col = iso2c, linewidth = iso2c)) + geom_line() + scale_linewidth_manual(values = c(0.3,0.3,0.3,0.3,0.3,0.3,0.7,0.3)) +
labs(title = "G7各国の教育費(政府の総支出に対する率(%))の経年変化")
気づいたこと・疑問・備考
df_military_ed_long |> filter(name != "military_usd", iso2c == "JP") |> drop_na(value) |>
ggplot(aes(year, value, col = name)) + geom_line() +
labs(title = "日本の軍事費と教育費の(政府の総支出に対する率(%))")
df_military_ed_long |> filter(name != "military_usd", iso2c != "JP") |> drop_na(value) |>
ggplot(aes(year, value, col = name)) + geom_line() + facet_wrap(~country) +
labs(title = "日本以外のG7の軍事費と教育費の(政府の総支出に対する率(%))",
x = "", y = "", col = "") +
theme(legend.position = "top")
気づいたこと・疑問・備考
df_military_ed |> filter(year == 2020) |> drop_na(military_usd) |> arrange(desc(military_usd)) |>
ggplot(aes(fct_rev(fct_inorder(country)), military_usd, fill = region)) + geom_col() +
coord_flip() + labs(title = "軍事費(USD)の多い順", x = "")
df_military_ed |> filter(year == 2020) |> drop_na(military_gov) |> arrange(desc(military_gov)) |>
ggplot(aes(fct_rev(fct_inorder(country)), military_gov, fill = region)) + geom_col() +
coord_flip() + labs(title = "軍事費(政府の総支出に対する率(%))の多い順", x = "")
気づいたこと・疑問・備考
df_military_ed |> filter(year == 2020) |> drop_na(education_gov) |> arrange(desc(education_gov)) |>
ggplot(aes(fct_rev(fct_inorder(country)), education_gov, fill = region)) + geom_col() +
coord_flip() + labs(title = "教育費(政府の総支出に対する率(%))の多い順", x = "")
気づいたこと・疑問・備考
df_military_ed |> filter(year == 2020) |> drop_na(military_gov, education_gov) |>
ggplot(aes(education_gov, military_gov, col = iso2c)) + geom_point() + geom_label(aes(label = iso2c), nudge_y = 0.1) + theme(legend.position = "none") +
labs(title = "G7の2020年の教育費と軍事費の政府支出における割合の散布図", x = "教育費(政府の総支出に対する率(%))", y = "軍事費(政府の総支出に対する率(%))")
気づいたこと・疑問