library("tidyverse")
library("data.table")
<- c(
big_mac_countries "ARG", "AUS", "BRA", "GBR", "CAN", "CHL", "CHN", "CZE", "DNK",
"EGY", "HKG", "HUN", "IDN", "ISR", "JPN", "MYS", "MEX", "NZL",
"NOR", "PER", "PHL", "POL", "RUS", "SAU", "SGP", "ZAF", "KOR",
"SWE", "CHE", "TWN", "THA", "TUR", "ARE", "USA", "COL", "CRI",
"PAK", "LKA", "UKR", "URY", "IND", "VNM", "GTM", "HND", "VEN",
"NIC", "AZE", "BHR", "HRV", "JOR", "KWT", "LBN", "MDA", "OMN",
"QAT", "ROU", "EUZ"
)
ビッグマック指数
投資のためのファンダメンタルズ分析
- ビッグマック指数の読み方
- 例として2024年1月の日本円の米ドルに対するビッグマック指数は -46.5%(GDP調整前)。よって日本円は米ドルに対して 46.5% 通貨安(円安)。同じく2024年1月のスイスフランの米ドルに対するビッグマック指数は +43.5%(GDP調整前)。よってスイスフランは米ドルに対して 43.5% 通貨高。
- 読み方はGDP調整後も同様。
- 「人はビッグマックのみにて生くるものにあらず」。ビッグマックに利用されている食材費やその他のコストが世界各国の全ての品目の物価を反映している訳ではありません。
時系列推移
コード
変数 | データ | |
---|---|---|
1 | dollar_ex | 対米ドル為替レート(出典:Reuters) |
2 | GDP_dollar | 米ドル建て1人当たりGDP(出典:IMF) |
3 | GDP_local | 自国通貨建て1人当たりGDP |
4 | local_price | ビッグマック価格(自国通貨建て、出典:McDonalds; The Economist) |
5 | dollar_price | ビッグマック価格(米ドル建て) |
前処理パート
ビッグマック指数算出対象国・地域
以降「ビッグマック指数算出対象国・地域」は「対象国」と表記する。
ソースデータの読み込み
<- "https://raw.githubusercontent.com/TheEconomist/big-mac-data/master/source-data/big-mac-source-data-v2.csv" %>%
big_mac_data fread(na.strings = "#N/A") %>%
:= as.numeric(GDP_local)] %>%
.[, GDP_local := ifelse(local_price == "-", NA, local_price) %>% as.numeric()] %>%
.[, local_price !is.na(local_price)] %>%
.[order(date, name)]
.[glimpse(big_mac_data)
Rows: 2,160
Columns: 8
$ name <chr> "Argentina", "Australia", "Brazil", "Britain", "Canada",…
$ iso_a3 <chr> "ARG", "AUS", "BRA", "GBR", "CAN", "CHL", "CHN", "CZE", …
$ currency_code <chr> "ARS", "AUD", "BRL", "GBP", "CAD", "CLP", "CNY", "CZK", …
$ local_price <dbl> 2.50, 2.59, 2.95, 1.90, 2.85, 1260.00, 9.90, 54.37, 24.7…
$ dollar_ex <dbl> 1.0000000, 1.6800000, 1.7900000, 0.6329114, 1.4700000, 5…
$ GDP_dollar <dbl> 9283.180, 20388.810, 5199.450, 28306.430, 21046.560, 547…
$ GDP_local <dbl> 9283.18, 32394.17, 6029.89, 17089.80, 31222.68, 2520325.…
$ date <IDate> 2000-04-01, 2000-04-01, 2000-04-01, 2000-04-01, 2000-0…
米国の GDP_dollar と GDP_local が同一であることから GDP_local は「自国通貨建て1人当たりGDP」と判断する。
<- big_mac_data[big_mac_data$iso_a3 == "USA", c("date", "iso_a3", "GDP_dollar", "GDP_local")]) (big_mac_data_USA
date iso_a3 GDP_dollar GDP_local
1: 2000-04-01 USA 32833.67 32833.67
2: 2001-04-01 USA 34496.24 34496.24
3: 2002-04-01 USA 36312.78 36312.78
4: 2003-04-01 USA 37101.45 37101.45
5: 2004-05-01 USA 37945.76 37945.76
6: 2005-06-01 USA 39405.35 39405.35
7: 2006-01-01 USA 41641.62 41641.62
8: 2006-05-01 USA 41641.62 41641.62
9: 2007-01-01 USA 44034.26 44034.26
10: 2007-06-01 USA 44034.26 44034.26
11: 2008-06-01 USA 46216.85 46216.85
12: 2009-07-01 USA 47943.35 47943.35
13: 2010-01-01 USA 48470.55 48470.55
14: 2010-07-01 USA 48470.55 48470.55
15: 2011-07-01 USA 47102.43 47102.43
16: 2012-01-01 USA 48586.29 48586.29
17: 2012-07-01 USA 48586.29 48586.29
18: 2013-01-01 USA 50008.11 50008.11
19: 2013-07-01 USA 50008.11 50008.11
20: 2014-01-01 USA 51736.74 51736.74
21: 2014-07-01 USA 51736.74 51736.74
22: 2015-01-01 USA 53245.52 53245.52
23: 2015-07-01 USA 53245.52 53245.52
24: 2016-01-01 USA 55083.51 55083.51
25: 2016-07-01 USA 55083.51 55083.51
26: 2017-01-01 USA 56729.68 56729.68
27: 2017-07-01 USA 56729.68 56729.68
28: 2018-01-01 USA 57839.99 57839.99
29: 2018-07-01 USA 57839.99 57839.99
30: 2019-01-01 USA 59878.72 59878.72
31: 2019-07-09 USA 59878.72 59878.72
32: 2020-01-14 USA 62787.78 62787.78
33: 2020-07-01 USA 62787.78 62787.78
34: 2021-01-01 USA 65077.30 65077.30
35: 2021-07-01 USA 65077.30 65077.30
36: 2022-01-01 USA 63577.34 63577.34
37: 2022-07-01 USA 63577.34 63577.34
38: 2023-01-01 USA 70159.77 70159.77
39: 2023-07-01 USA 70159.77 70159.77
40: 2024-01-01 USA 76343.25 76343.25
date iso_a3 GDP_dollar GDP_local
all(big_mac_data_USA$GDP_dollar == big_mac_data_USA$GDP_local)
[1] TRUE
対象国の米ドル換算ビッグマック価格算出
dollar_price として列に追加
:= local_price / dollar_ex]
big_mac_data[, dollar_price glimpse(big_mac_data)
Rows: 2,160
Columns: 9
$ name <chr> "Argentina", "Australia", "Brazil", "Britain", "Canada",…
$ iso_a3 <chr> "ARG", "AUS", "BRA", "GBR", "CAN", "CHL", "CHN", "CZE", …
$ currency_code <chr> "ARS", "AUD", "BRL", "GBP", "CAD", "CLP", "CNY", "CZK", …
$ local_price <dbl> 2.50, 2.59, 2.95, 1.90, 2.85, 1260.00, 9.90, 54.37, 24.7…
$ dollar_ex <dbl> 1.0000000, 1.6800000, 1.7900000, 0.6329114, 1.4700000, 5…
$ GDP_dollar <dbl> 9283.180, 20388.810, 5199.450, 28306.430, 21046.560, 547…
$ GDP_local <dbl> 9283.18, 32394.17, 6029.89, 17089.80, 31222.68, 2520325.…
$ date <IDate> 2000-04-01, 2000-04-01, 2000-04-01, 2000-04-01, 2000-0…
$ dollar_price <dbl> 2.500000, 1.541667, 1.648045, 3.002000, 1.938776, 2.4513…
基準通貨
通貨安または通貨高を比較する基準通貨。The Economist では USD、EUR、GBP、JPY、CNY の5つを基準通貨としている。
但し本ページでは米ドル USD のみを基準通貨とする。(例)米ドルに対して日本円は10%の通貨安。
# base_currencies = c('USD', 'EUR', 'GBP', 'JPY', 'CNY')
<- "USD" base_currencies
GDP調整前ビッグマック指数算出パート
big_mac_index の作成
対象国かつ米ドル換算ビッグマック価格が存在する行を抽出し big_mac_index を作成。
<- big_mac_data[
big_mac_index !is.na(dollar_price) & iso_a3 %in% big_mac_countries,
.(date, iso_a3, currency_code, name, local_price, dollar_ex, dollar_price)
]glimpse(big_mac_index)
Rows: 1,797
Columns: 7
$ date <IDate> 2000-04-01, 2000-04-01, 2000-04-01, 2000-04-01, 2000-0…
$ iso_a3 <chr> "ARG", "AUS", "BRA", "GBR", "CAN", "CHL", "CHN", "CZE", …
$ currency_code <chr> "ARS", "AUD", "BRL", "GBP", "CAD", "CLP", "CNY", "CZK", …
$ name <chr> "Argentina", "Australia", "Brazil", "Britain", "Canada",…
$ local_price <dbl> 2.50, 2.59, 2.95, 1.90, 2.85, 1260.00, 9.90, 54.37, 24.7…
$ dollar_ex <dbl> 1.0000000, 1.6800000, 1.7900000, 0.6329114, 1.4700000, 5…
$ dollar_price <dbl> 2.500000, 1.541667, 1.648045, 3.002000, 1.938776, 2.4513…
ビッグマック指数の作成
date ごとに「対象国の米ドル換算マクドナルド価格」の「米ドルマクドナルド価格(米国のマクドナルド価格)」からの乖離を求め、「GDP調整前ビッグマック指数」(ここでは USD 列)とする。
for (currency in base_currencies) {
big_mac_index[
,:=
(currency) /
dollar_price == currency]$dollar_price -
.SD[currency_code 1,
= date
by
] }
求めたGDP調整前ビッグマック指数( USD )を小数点5位で四捨五入。
:= round(.SD, 5L), .SDcols = base_currencies] big_mac_index[, (base_currencies)
よって currency_code が USD の場合のビッグマック指数( USD )は全て 0 になる。
:= round(.SD, 5L), .SDcols = base_currencies]
big_mac_index[, (base_currencies) == "USD"]]$USD big_mac_index[, .SD[currency_code
[1] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
[39] 0 0
GDP調整前ビッグマック指数
直近のGDP調整前ビッグマック指数。USD 列が各通貨( currency_code )の米ドルに対するビッグマック指数。
%>%
big_mac_index max(date) == date]] %>%
.[, .SD[%>%
.[, .(date, name, currency_code, local_price, USD)] order(USD), ] .[
date name currency_code local_price USD
1: 2024-01-01 Taiwan TWD 75.00 -0.57952
2: 2024-01-01 Indonesia IDR 38000.00 -0.57286
3: 2024-01-01 India INR 215.00 -0.54512
4: 2024-01-01 South Africa ZAR 51.90 -0.52459
5: 2024-01-01 Egypt EGP 85.00 -0.51655
6: 2024-01-01 Malaysia MYR 13.15 -0.51104
7: 2024-01-01 Philippines PHP 161.00 -0.49742
8: 2024-01-01 Ukraine UAH 110.00 -0.48371
9: 2024-01-01 Hong Kong HKD 23.00 -0.48297
10: 2024-01-01 Vietnam VND 74000.00 -0.47058
11: 2024-01-01 Japan JPY 450.00 -0.46513
12: 2024-01-01 Romania RON 15.65 -0.39845
13: 2024-01-01 China CNY 25.00 -0.38988
14: 2024-01-01 Azerbaijan AZN 5.95 -0.38579
15: 2024-01-01 Jordan JOD 2.50 -0.38030
16: 2024-01-01 Moldova MDL 63.00 -0.37446
17: 2024-01-01 Oman OMR 1.42 -0.35179
18: 2024-01-01 Guatemala GTQ 29.00 -0.34783
19: 2024-01-01 Thailand THB 135.00 -0.33499
20: 2024-01-01 Pakistan PKR 1065.00 -0.33094
21: 2024-01-01 Argentina ARS 3150.00 -0.32606
22: 2024-01-01 Qatar QAR 14.00 -0.32424
23: 2024-01-01 Turkey TRY 120.00 -0.30293
24: 2024-01-01 Hungary HUF 1400.00 -0.30111
25: 2024-01-01 South Korea KRW 5500.00 -0.27806
26: 2024-01-01 Honduras HNL 102.00 -0.27366
27: 2024-01-01 Peru PEN 15.90 -0.25320
28: 2024-01-01 Nicaragua NIO 159.00 -0.23702
29: 2024-01-01 Chile CLP 4050.00 -0.21684
30: 2024-01-01 Bahrain BHD 1.70 -0.20740
31: 2024-01-01 Israel ILS 17.00 -0.20630
32: 2024-01-01 Kuwait KWD 1.40 -0.20050
33: 2024-01-01 Czech Republic CZK 105.00 -0.18966
34: 2024-01-01 Croatia EUR 4.38 -0.16206
35: 2024-01-01 Lebanon LBP 430000.00 -0.15563
36: 2024-01-01 Brazil BRL 23.90 -0.15482
37: 2024-01-01 United Arab Emirates AED 18.00 -0.13872
38: 2024-01-01 Venezuela VES 178.13 -0.13282
39: 2024-01-01 Singapore SGD 6.65 -0.12880
40: 2024-01-01 Poland PLN 19.90 -0.12737
41: 2024-01-01 New Zealand NZD 8.20 -0.12027
42: 2024-01-01 Saudi Arabia SAR 19.00 -0.10969
43: 2024-01-01 Australia AUD 7.70 -0.10821
44: 2024-01-01 Colombia COP 19900.00 -0.10596
45: 2024-01-01 Mexico MXN 89.00 -0.08735
46: 2024-01-01 Canada CAD 7.47 -0.02366
47: 2024-01-01 Sri Lanka LKR 1820.00 -0.00028
48: 2024-01-01 United States USD 5.69 0.00000
49: 2024-01-01 Denmark DKK 39.00 0.00032
50: 2024-01-01 Britain GBP 4.49 0.00358
51: 2024-01-01 Costa Rica CRC 2950.00 0.00387
52: 2024-01-01 Sweden SEK 61.29 0.03080
53: 2024-01-01 Euro area EUR 5.39 0.03116
54: 2024-01-01 Uruguay UYU 275.00 0.23718
55: 2024-01-01 Norway NOK 75.00 0.25465
56: 2024-01-01 Switzerland CHF 7.10 0.43533
date name currency_code local_price USD
GDP調整後ビッグマック指数算出パート
big_mac_gdp_data の作成
自国通貨建て1人当たりGDPが 0 以下で無い国を抽出し big_mac_gdp_data を作成。
<- big_mac_data[GDP_local > 0]
big_mac_gdp_data glimpse(big_mac_gdp_data)
Rows: 2,136
Columns: 9
$ name <chr> "Argentina", "Australia", "Brazil", "Britain", "Canada",…
$ iso_a3 <chr> "ARG", "AUS", "BRA", "GBR", "CAN", "CHL", "CHN", "CZE", …
$ currency_code <chr> "ARS", "AUD", "BRL", "GBP", "CAD", "CLP", "CNY", "CZK", …
$ local_price <dbl> 2.50, 2.59, 2.95, 1.90, 2.85, 1260.00, 9.90, 54.37, 24.7…
$ dollar_ex <dbl> 1.0000000, 1.6800000, 1.7900000, 0.6329114, 1.4700000, 5…
$ GDP_dollar <dbl> 9283.180, 20388.810, 5199.450, 28306.430, 21046.560, 547…
$ GDP_local <dbl> 9283.18, 32394.17, 6029.89, 17089.80, 31222.68, 2520325.…
$ date <IDate> 2000-04-01, 2000-04-01, 2000-04-01, 2000-04-01, 2000-0…
$ dollar_price <dbl> 2.500000, 1.541667, 1.648045, 3.002000, 1.938776, 2.4513…
GDP調整後ビッグマック指数算出対象国・地域
線形回帰によるGDP調整後ビッグマック指数算出対象国・地域。 以降「線形回帰によるGDP調整後ビッグマック指数算出対象国・地域」は「線形回帰対象国」と表記する。
<- c(
regression_countries "ARG", "AUS", "BRA", "GBR", "CAN", "CHL", "CHN", "CZE", "DNK",
"EGY", "EUZ", "HKG", "HUN", "IDN", "ISR", "JPN", "MYS", "MEX",
"NZL", "NOR", "PER", "PHL", "POL", "RUS", "SAU", "SGP", "ZAF",
"KOR", "SWE", "CHE", "TWN", "THA", "TUR", "USA", "COL", "PAK",
"IND", "AUT", "BEL", "NLD", "FIN", "FRA", "DEU", "IRL", "ITA",
"PRT", "ESP", "GRC", "EST"
)# 2021年1月以降、下記の国々が線形回帰対象国に加えられている。
<- c(
regression_addons_2021 "ARE", "CRI", "LKA", "UKR", "URY", "VNM", "GTM", "HND", "NIC",
"AZE", "BHR", "HRV", "JOR", "KWT", "MDA", "OMN", "QAT", "ROU",
"SVK", "SVN", "LVA", "LTU"
)# 線形回帰対象国を抽出
<- big_mac_gdp_data[iso_a3 %in% regression_countries |
big_mac_gdp_data %in% regression_addons_2021 & date >= as.Date("2021-01-01"))]
(iso_a3 glimpse(big_mac_gdp_data)
Rows: 1,886
Columns: 9
$ name <chr> "Argentina", "Australia", "Brazil", "Britain", "Canada",…
$ iso_a3 <chr> "ARG", "AUS", "BRA", "GBR", "CAN", "CHL", "CHN", "CZE", …
$ currency_code <chr> "ARS", "AUD", "BRL", "GBP", "CAD", "CLP", "CNY", "CZK", …
$ local_price <dbl> 2.50, 2.59, 2.95, 1.90, 2.85, 1260.00, 9.90, 54.37, 24.7…
$ dollar_ex <dbl> 1.0000000, 1.6800000, 1.7900000, 0.6329114, 1.4700000, 5…
$ GDP_dollar <dbl> 9283.180, 20388.810, 5199.450, 28306.430, 21046.560, 547…
$ GDP_local <dbl> 9283.18, 32394.17, 6029.89, 17089.80, 31222.68, 2520325.…
$ date <IDate> 2000-04-01, 2000-04-01, 2000-04-01, 2000-04-01, 2000-0…
$ dollar_price <dbl> 2.500000, 1.541667, 1.648045, 3.002000, 1.938776, 2.4513…
米ドル建て1人当たりGDP( GDP_bigmac )の算出
線形回帰対象国の「自国通貨建てビッグマック価格に対する自国通貨建て1人当たりGDPの比」に「米国のビッグマック価格」を乗じた結果を「線形回帰対象国の米ドル建て1人当たりGDP」とする( GDP_bigmac )。
%>%
big_mac_gdp_data := GDP_local / (local_price / .SD[iso_a3 == "USA"]$local_price), by = date]
.[, GDP_bigmac glimpse(big_mac_gdp_data)
Rows: 1,886
Columns: 10
$ name <chr> "Argentina", "Australia", "Brazil", "Britain", "Canada",…
$ iso_a3 <chr> "ARG", "AUS", "BRA", "GBR", "CAN", "CHL", "CHN", "CZE", …
$ currency_code <chr> "ARS", "AUD", "BRL", "GBP", "CAD", "CLP", "CNY", "CZK", …
$ local_price <dbl> 2.50, 2.59, 2.95, 1.90, 2.85, 1260.00, 9.90, 54.37, 24.7…
$ dollar_ex <dbl> 1.0000000, 1.6800000, 1.7900000, 0.6329114, 1.4700000, 5…
$ GDP_dollar <dbl> 9283.180, 20388.810, 5199.450, 28306.430, 21046.560, 547…
$ GDP_local <dbl> 9283.18, 32394.17, 6029.89, 17089.80, 31222.68, 2520325.…
$ date <IDate> 2000-04-01, 2000-04-01, 2000-04-01, 2000-04-01, 2000-0…
$ dollar_price <dbl> 2.500000, 1.541667, 1.648045, 3.002000, 1.938776, 2.4513…
$ GDP_bigmac <dbl> 8317.7293, 28016.5795, 4578.6283, 20147.9747, 24539.9309…
よって米国の1人当たりGDP( GDP_local )と米ドル建て1人当たりGDP( GDP_bigmac )は同一となる。
== "USA"], ] %>% .[, .(currency_code, GDP_local, GDP_bigmac)] big_mac_gdp_data[, .SD[iso_a3
currency_code GDP_local GDP_bigmac
1: USD 32833.67 32833.67
2: USD 34496.24 34496.24
3: USD 36312.78 36312.78
4: USD 37101.45 37101.45
5: USD 37945.76 37945.76
6: USD 39405.35 39405.35
7: USD 41641.62 41641.62
8: USD 41641.62 41641.62
9: USD 44034.26 44034.26
10: USD 44034.26 44034.26
11: USD 46216.85 46216.85
12: USD 47943.35 47943.35
13: USD 48470.55 48470.55
14: USD 48470.55 48470.55
15: USD 47102.43 47102.43
16: USD 48586.29 48586.29
17: USD 48586.29 48586.29
18: USD 50008.11 50008.11
19: USD 50008.11 50008.11
20: USD 51736.74 51736.74
21: USD 51736.74 51736.74
22: USD 53245.52 53245.52
23: USD 53245.52 53245.52
24: USD 55083.51 55083.51
25: USD 55083.51 55083.51
26: USD 56729.68 56729.68
27: USD 56729.68 56729.68
28: USD 57839.99 57839.99
29: USD 57839.99 57839.99
30: USD 59878.72 59878.72
31: USD 59878.72 59878.72
32: USD 62787.78 62787.78
33: USD 62787.78 62787.78
34: USD 65077.30 65077.30
35: USD 65077.30 65077.30
36: USD 63577.34 63577.34
37: USD 63577.34 63577.34
38: USD 70159.77 70159.77
39: USD 70159.77 70159.77
40: USD 76343.25 76343.25
currency_code GDP_local GDP_bigmac
all(big_mac_gdp_data[, .SD[iso_a3 == "USA"], ] %>% .[, .(GDP_local)] == big_mac_gdp_data[, .SD[iso_a3 == "USA"], ] %>% .[, .(GDP_bigmac)])
[1] TRUE
GDP調整後米ドル換算ビッグマック価格( adj_price )の算出
date ごとに線形回帰対象国の「米ドル建て1人当たりGDP( GDP_bigmac )」を説明変数、「米ドル換算ビッグマック価格( dollar_price )」を目的変数とし、その線形回帰の結果をGDP調整後米ドル換算ビッグマック価格( adj_price )とする。
big_mac_gdp_data[
,`:=`(
adj_price = lm(dollar_price ~ GDP_bigmac) %>% predict()
),= date
by
]glimpse(big_mac_gdp_data)
Rows: 1,886
Columns: 11
$ name <chr> "Argentina", "Australia", "Brazil", "Britain", "Canada",…
$ iso_a3 <chr> "ARG", "AUS", "BRA", "GBR", "CAN", "CHL", "CHN", "CZE", …
$ currency_code <chr> "ARS", "AUD", "BRL", "GBP", "CAD", "CLP", "CNY", "CZK", …
$ local_price <dbl> 2.50, 2.59, 2.95, 1.90, 2.85, 1260.00, 9.90, 54.37, 24.7…
$ dollar_ex <dbl> 1.0000000, 1.6800000, 1.7900000, 0.6329114, 1.4700000, 5…
$ GDP_dollar <dbl> 9283.180, 20388.810, 5199.450, 28306.430, 21046.560, 547…
$ GDP_local <dbl> 9283.18, 32394.17, 6029.89, 17089.80, 31222.68, 2520325.…
$ date <IDate> 2000-04-01, 2000-04-01, 2000-04-01, 2000-04-01, 2000-0…
$ dollar_price <dbl> 2.500000, 1.541667, 1.648045, 3.002000, 1.938776, 2.4513…
$ GDP_bigmac <dbl> 8317.7293, 28016.5795, 4578.6283, 20147.9747, 24539.9309…
$ adj_price <dbl> 1.941787, 2.286551, 1.876347, 2.148837, 2.225703, 1.8746…
よって米国の自国通貨建てビッグマック価格(=米ドル換算ビッグマック価格)とGDP調整後米ドル換算ビッグマック価格には差異が出る場合がある。
%>%
big_mac_gdp_data == "USA"]] %>%
.[, .SD[iso_a3 %>%
.[, .(name, currency_code, local_price, dollar_price, adj_price)] tail()
name currency_code local_price dollar_price adj_price
1: United States USD 4.93 4.93 4.718820
2: United States USD 5.04 5.04 4.731159
3: United States USD 5.15 5.15 4.564286
4: United States USD 5.36 5.36 4.895050
5: United States USD 5.58 5.58 5.178366
6: United States USD 5.69 5.69 5.244963
big_mac_adj_index の作成
米ドル換算ビッグマック価格が存在し、かつ線形回帰対象国であり、かつ対象国である行を抽出し big_mac_adj_index を作成。
<- big_mac_gdp_data[
big_mac_adj_index !is.na(dollar_price) &
(%in% regression_countries |
iso_a3 %in% regression_addons_2021 & date >= "2021-01-01"
iso_a3 &
) %in% big_mac_countries,
iso_a3
.(date, iso_a3, currency_code, name, local_price, dollar_ex, dollar_price, GDP_bigmac, adj_price) ]
ビッグマック指数の作成
日付ごとに「米ドル換算ビッグマック価格( dollar_price )とGDP調整後米ドル換算ビッグマック価格( adj_price )の比」の「米ドルでのビッグマック価格と米国のGDP調整後ビッグマック価格の比」からの乖離をGDP調整後ビッグマック指数( USD 列)とする。
for (currency in base_currencies) {
big_mac_adj_index[
,:=
(currency)
(/ adj_price
dollar_price /
)
(== currency]$dollar_price /
.SD[currency_code == currency]$adj_price
.SD[currency_code -
) 1,
= date
by
] }
求めたGDP調整後ビッグマック指数を小数点5位で四捨五入
:= round(.SD, 5L), .SDcols = base_currencies]
big_mac_adj_index[, (base_currencies) glimpse(big_mac_adj_index)
Rows: 1,546
Columns: 10
$ date <IDate> 2000-04-01, 2000-04-01, 2000-04-01, 2000-04-01, 2000-0…
$ iso_a3 <chr> "ARG", "AUS", "BRA", "GBR", "CAN", "CHL", "CHN", "CZE", …
$ currency_code <chr> "ARS", "AUD", "BRL", "GBP", "CAD", "CLP", "CNY", "CZK", …
$ name <chr> "Argentina", "Australia", "Brazil", "Britain", "Canada",…
$ local_price <dbl> 2.50, 2.59, 2.95, 1.90, 2.85, 1260.00, 9.90, 54.37, 24.7…
$ dollar_ex <dbl> 1.0000000, 1.6800000, 1.7900000, 0.6329114, 1.4700000, 5…
$ dollar_price <dbl> 2.500000, 1.541667, 1.648045, 3.002000, 1.938776, 2.4513…
$ GDP_bigmac <dbl> 8317.7293, 28016.5795, 4578.6283, 20147.9747, 24539.9309…
$ adj_price <dbl> 1.941787, 2.286551, 1.876347, 2.148837, 2.225703, 1.8746…
$ USD <dbl> 0.36269, -0.28638, -0.07036, 0.47865, -0.07803, 0.38404,…
GDP調整後ビッグマック指数
直近のGDP調整後ビッグマック指数。USD 列が各通貨( currency_code )の米ドルに対するビッグマック指数
%>%
big_mac_adj_index max(date) == date]] %>%
.[, .SD[%>%
.[, .(date, name, currency_code, local_price, USD)] order(USD), ] .[
date name currency_code local_price USD
1: 2024-01-01 Taiwan TWD 75.00 -0.57641
2: 2024-01-01 Hong Kong HKD 23.00 -0.50819
3: 2024-01-01 Indonesia IDR 38000.00 -0.46694
4: 2024-01-01 Japan JPY 450.00 -0.43058
5: 2024-01-01 India INR 215.00 -0.42010
6: 2024-01-01 Malaysia MYR 13.15 -0.41849
7: 2024-01-01 South Africa ZAR 51.90 -0.40966
8: 2024-01-01 Qatar QAR 14.00 -0.40871
9: 2024-01-01 Egypt EGP 85.00 -0.38364
10: 2024-01-01 Philippines PHP 161.00 -0.36393
11: 2024-01-01 Ukraine UAH 110.00 -0.34840
12: 2024-01-01 Vietnam VND 74000.00 -0.33093
13: 2024-01-01 Romania RON 15.65 -0.29268
14: 2024-01-01 China CNY 25.00 -0.26296
15: 2024-01-01 Oman OMR 1.42 -0.26118
16: 2024-01-01 Azerbaijan AZN 5.95 -0.23904
17: 2024-01-01 Jordan JOD 2.50 -0.21710
18: 2024-01-01 Moldova MDL 63.00 -0.21676
19: 2024-01-01 South Korea KRW 5500.00 -0.19790
20: 2024-01-01 Singapore SGD 6.65 -0.18164
21: 2024-01-01 Hungary HUF 1400.00 -0.18121
22: 2024-01-01 Guatemala GTQ 29.00 -0.17704
23: 2024-01-01 Thailand THB 135.00 -0.16940
24: 2024-01-01 Israel ILS 17.00 -0.16793
25: 2024-01-01 Pakistan PKR 1065.00 -0.13532
26: 2024-01-01 Argentina ARS 3150.00 -0.13459
27: 2024-01-01 Turkey TRY 120.00 -0.12239
28: 2024-01-01 Kuwait KWD 1.40 -0.11649
29: 2024-01-01 Bahrain BHD 1.70 -0.09790
30: 2024-01-01 United Arab Emirates AED 18.00 -0.09297
31: 2024-01-01 Australia AUD 7.70 -0.08771
32: 2024-01-01 Honduras HNL 102.00 -0.07088
33: 2024-01-01 Czech Republic CZK 105.00 -0.07048
34: 2024-01-01 Peru PEN 15.90 -0.06503
35: 2024-01-01 Chile CLP 4050.00 -0.05108
36: 2024-01-01 New Zealand NZD 8.20 -0.04886
37: 2024-01-01 Nicaragua NIO 159.00 -0.01960
38: 2024-01-01 United States USD 5.69 0.00000
39: 2024-01-01 Croatia EUR 4.38 0.00077
40: 2024-01-01 Saudi Arabia SAR 19.00 0.00481
41: 2024-01-01 Denmark DKK 39.00 0.01830
42: 2024-01-01 Poland PLN 19.90 0.03916
43: 2024-01-01 Canada CAD 7.47 0.04521
44: 2024-01-01 Brazil BRL 23.90 0.05097
45: 2024-01-01 Britain GBP 4.49 0.10293
46: 2024-01-01 Sweden SEK 61.29 0.11000
47: 2024-01-01 Mexico MXN 89.00 0.12273
48: 2024-01-01 Colombia COP 19900.00 0.12665
49: 2024-01-01 Euro area EUR 5.39 0.15279
50: 2024-01-01 Costa Rica CRC 2950.00 0.22661
51: 2024-01-01 Norway NOK 75.00 0.25145
52: 2024-01-01 Sri Lanka LKR 1820.00 0.28296
53: 2024-01-01 Switzerland CHF 7.10 0.45592
54: 2024-01-01 Uruguay UYU 275.00 0.50761
date name currency_code local_price USD
データソース
- The Economist https://www.economist.com/big-mac-index
最終更新
Sys.time()
[1] "2024-05-18 11:25:42 JST"
R、Quarto、Package
R.Version()$version.string
[1] "R version 4.3.3 (2024-02-29 ucrt)"
::quarto_version() quarto
[1] '1.4.553'
packageVersion(pkg = 'tidyverse')
[1] '2.0.0'