Asset Management Consulting

ビッグマック指数

 

目 次

  • 1 関連ポスト
  • 2 時系列推移
  • 3 コード
    • 3.1 前処理パート
      • 3.1.1 ビッグマック指数算出対象国・地域
      • 3.1.2 ソースデータの読み込み
      • 3.1.3 対象国の米ドル換算ビッグマック価格算出
      • 3.1.4 基準通貨
    • 3.2 GDP調整前ビッグマック指数算出パート
      • 3.2.1 big_mac_index の作成
      • 3.2.2 ビッグマック指数の作成
      • 3.2.3 GDP調整前ビッグマック指数
    • 3.3 GDP調整後ビッグマック指数算出パート
      • 3.3.1 big_mac_gdp_data の作成
      • 3.3.2 GDP調整後ビッグマック指数算出対象国・地域
      • 3.3.3 米ドル建て1人当たりGDP( GDP_bigmac )の算出
      • 3.3.4 GDP調整後米ドル換算ビッグマック価格( adj_price )の算出
      • 3.3.5 big_mac_adj_index の作成
      • 3.3.6 ビッグマック指数の作成
      • 3.3.7 GDP調整後ビッグマック指数
  • 4 データ出所
  • 5 公表頻度
  • 6 最終更新
  • 7 R & Quarto
  • 8 著者
年月 , 通貨 , GDP調整 , 対USD ビッグマック指数(%) , Argentina:ARS , Australia:AUD , Brazil:BRL , Britain:GBP , Canada:CAD , Chile:CLP , China:CNY , Czech Republic:CZK , Denmark:DKK , Euro area:EUR , Hong Kong:HKD , Hungary:HUF , Indonesia:IDR , Israel:ILS , Japan:JPY , Malaysia:MYR , Mexico:MXN , New Zealand:NZD , Poland:PLN , Russia:RUB , Singapore:SGD , South Africa:ZAR , South Korea:KRW , Sweden:SEK , Switzerland:CHF , Taiwan:TWD , Thailand:THB , United States:USD , Philippines:PHP , Norway:NOK , Peru:PEN , Turkey:TRY , Egypt:EGP , Colombia:COP , Pakistan:PKR , Saudi Arabia:SAR , India:INR , Azerbaijan:AZN , Bahrain:BHD , Costa Rica:CRC , Guatemala:GTQ , Honduras:HNL , Jordan:JOD , Kuwait:KWD , Moldova:MDL , Nicaragua:NIO , Oman:OMR , Qatar:QAR , Romania:RON , Sri Lanka:LKR , Ukraine:UAH , United Arab Emirates:AED , Uruguay:UYU , Vietnam:VND , GDP調整前 , GDP調整後

1 関連ポスト

2026年1月の日本円の米ドルに対するビッグマック指数は-50.5%(GDP調整前)。よって、日本円は米ドルに対して50.5%通貨安(円安)。なお、米ドルに対して日本円よりも通貨安が進んでいるのは比較51通貨のうち、台湾ドル(59.6%)、インドルピー(58.9%)、インドネシアルピア(58.9%)、エジプトポンド(56.8%)、…

— 三竹 道雄/MITAKE Michio (@amc_corporation) June 7, 2026
Tip
  • ビッグマック指数の読み方
    • 例として2026年1月の日本円の米ドルに対するビッグマック指数は -50.5%(GDP調整前)。よって日本円は米ドルに対して 50.5% 通貨安(円安)。同じく2024年1月のスイスフランの米ドルに対するビッグマック指数は +48.4%(GDP調整前)。よってスイスフランは米ドルに対して 48.4% 通貨高。
    • 読み方はGDP調整後も同様。
  • 「人はビッグマックのみにて生くるものにあらず」。ビッグマックに利用されている食材費やその他のコストが世界各国の全ての品目の物価を反映している訳ではありません。

2 時系列推移

年月
通貨
GDP調整

3 コード

Table 1: 変数一覧
変数 データ
1 dollar_ex 対米ドル為替レート(出典:Reuters)
2 GDP_dollar 米ドル建て1人当たりGDP(出典:IMF)
3 GDP_local 自国通貨建て1人当たりGDP
4 local_price ビッグマック価格(自国通貨建て、出典:McDonalds; The Economist)
5 dollar_price ビッグマック価格(米ドル建て)
  • Source:
    • https://github.com/TheEconomist/big-mac-data/blob/master/data-generator-v2.R
    • https://github.com/TheEconomist/big-mac-data/blob/january-2023-update/data-generator-v2.R

3.1 前処理パート

3.1.1 ビッグマック指数算出対象国・地域

  • 以降「ビッグマック指数算出対象国・地域」は「対象国」と表記する。
library('tidyverse')
library('data.table')
big_mac_countries = c('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')

3.1.2 ソースデータの読み込み

big_mac_data = 'https://raw.githubusercontent.com/TheEconomist/big-mac-data/master/source-data/big-mac-source-data-v2.csv' %>% 
fread(na.strings = '#N/A') %>%
.[,GDP_local := as.numeric(GDP_local)] %>% 
.[, local_price := ifelse(local_price == '-', NA, local_price) %>% as.numeric] %>%
.[!is.na(local_price)] %>%
.[order(date, name)]
glimpse(big_mac_data)
Rows: 2,373
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> 8709.072, 21775.120, 3501.438, 28768.448, 22340.553, 498…
$ GDP_local     <dbl> 8709.072, 33742.635, 6351.375, 17777.384, 33191.468, 253…
$ date          <IDate> 2000-04-01, 2000-04-01, 2000-04-01, 2000-04-01, 2000-0…
Tip

米国の GDP_dollar と GDP_local が同一であることから GDP_local は「自国通貨建て1人当たりGDP」と判断する。

(big_mac_data_USA <- big_mac_data[big_mac_data$iso_a3=='USA',c('date','iso_a3','GDP_dollar','GDP_local')])
          date iso_a3 GDP_dollar GDP_local
        <IDat> <char>      <num>     <num>
 1: 2000-04-01    USA   34496.24  34496.24
 2: 2001-04-01    USA   36312.78  36312.78
 3: 2002-04-01    USA   37101.45  37101.45
 4: 2003-04-01    USA   37945.76  37945.76
 5: 2004-05-01    USA   39405.35  39405.35
 6: 2005-06-01    USA   41641.62  41641.62
 7: 2006-01-01    USA   41641.62  41641.62
 8: 2006-05-01    USA   44034.26  44034.26
 9: 2007-01-01    USA   44034.26  44034.26
10: 2007-06-01    USA   46216.85  46216.85
11: 2008-06-01    USA   47943.35  47943.35
12: 2009-07-01    USA   48470.55  48470.55
13: 2010-01-01    USA   48470.55  48470.55
14: 2010-07-01    USA   47102.43  47102.43
15: 2011-07-01    USA   48586.29  48586.29
16: 2012-01-01    USA   48586.29  48586.29
17: 2012-07-01    USA   50008.11  50008.11
18: 2013-01-01    USA   50008.11  50008.11
19: 2013-07-01    USA   51736.74  51736.74
20: 2014-01-01    USA   51736.74  51736.74
21: 2014-07-01    USA   53363.90  53363.90
22: 2015-01-01    USA   53363.90  53363.90
23: 2015-07-01    USA   55263.82  55263.82
24: 2016-01-01    USA   55263.82  55263.82
25: 2016-07-01    USA   57006.93  57006.93
26: 2017-01-01    USA   57006.93  57006.93
27: 2017-07-01    USA   58179.70  58179.70
28: 2018-01-01    USA   58179.70  58179.70
29: 2018-07-01    USA   60292.98  60292.98
30: 2019-01-01    USA   60292.98  60292.98
31: 2019-07-09    USA   63165.28  63165.28
32: 2020-01-14    USA   63165.28  63165.28
33: 2020-07-01    USA   65561.32  65561.32
34: 2021-01-01    USA   65561.32  65561.32
35: 2021-07-01    USA   64518.06  64518.06
36: 2022-01-01    USA   64518.06  64518.06
37: 2022-07-01    USA   71365.34  71365.34
38: 2023-01-01    USA   71365.34  71365.34
39: 2023-07-01    USA   77944.10  77944.10
40: 2024-01-01    USA   77944.10  77944.10
41: 2024-07-01    USA   82523.26  82523.26
42: 2025-01-01    USA   82523.26  82523.26
43: 2026-01-01    USA   86144.80  86144.80
          date iso_a3 GDP_dollar GDP_local
        <IDat> <char>      <num>     <num>
all(big_mac_data_USA$GDP_dollar==big_mac_data_USA$GDP_local)
[1] TRUE

3.1.3 対象国の米ドル換算ビッグマック価格算出

  • dollar_price として列に追加
big_mac_data[, dollar_price := local_price / dollar_ex]
glimpse(big_mac_data)
Rows: 2,373
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> 8709.072, 21775.120, 3501.438, 28768.448, 22340.553, 498…
$ GDP_local     <dbl> 8709.072, 33742.635, 6351.375, 17777.384, 33191.468, 253…
$ 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…

3.1.4 基準通貨

  • 通貨安または通貨高を比較する基準通貨。The Economist では USD、EUR、GBP、JPY、CNY の5つを基準通貨としている。
  • 但し本ページでは米ドル USD のみを基準通貨とする。(例)米ドルに対して日本円は10%の通貨安。
# base_currencies = c('USD', 'EUR', 'GBP', 'JPY', 'CNY')
base_currencies = 'USD'

3.2 GDP調整前ビッグマック指数算出パート

3.2.1 big_mac_index の作成

  • 対象国かつ米ドル換算ビッグマック価格が存在する行を抽出し big_mac_index を作成。
big_mac_index = big_mac_data[
    !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,962
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…

3.2.2 ビッグマック指数の作成

  • date ごとに「対象国の米ドル換算マクドナルド価格」の「米ドルマクドナルド価格(米国のマクドナルド価格)」からの乖離を求め、「GDP調整前ビッグマック指数」(ここでは USD 列)とする。
for(currency in base_currencies) {
    big_mac_index[
        ,                           
        (currency) :=               
            dollar_price /          
            .SD[currency_code == currency]$dollar_price -       
            1,                      
        by=date                   
    ]
}
  • 求めたGDP調整前ビッグマック指数( USD )を小数点5位で四捨五入。
big_mac_index[, (base_currencies) := round(.SD, 5L), .SDcols=base_currencies]
  • よって currency_code が USD の場合のビッグマック指数( USD )は全て 0 になる。
big_mac_index[, (base_currencies) := round(.SD, 5L), .SDcols=base_currencies]
big_mac_index[,.SD[currency_code == 'USD']]$USD
 [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 0 0 0

3.2.3 GDP調整前ビッグマック指数

  • 直近のGDP調整前ビッグマック指数。USD 列が各通貨( currency_code )の米ドルに対するビッグマック指数。
big_mac_index %>% .[,.SD[max(date)==date]] %>% .[ ,.(date,name,currency_code,local_price,USD)] %>% .[order(USD),]
          date                 name currency_code local_price      USD
        <IDat>               <char>        <char>       <num>    <num>
 1: 2026-01-01               Taiwan           TWD       78.00 -0.59626
 2: 2026-01-01                India           INR      227.00 -0.58922
 3: 2026-01-01            Indonesia           IDR    42500.00 -0.58872
 4: 2026-01-01                Egypt           EGP      125.00 -0.56764
 5: 2026-01-01          Philippines           PHP      169.00 -0.53570
 6: 2026-01-01              Vietnam           VND    76000.00 -0.52726
 7: 2026-01-01                Japan           JPY      480.00 -0.50531
 8: 2026-01-01              Ukraine           UAH      139.00 -0.47847
 9: 2026-01-01            Hong Kong           HKD       25.00 -0.47611
10: 2026-01-01         South Africa           ZAR       54.90 -0.45130
11: 2026-01-01             Malaysia           MYR       13.75 -0.44587
12: 2026-01-01               Jordan           JOD        2.50 -0.42290
13: 2026-01-01                China           CNY       25.50 -0.40157
14: 2026-01-01          South Korea           KRW     5500.00 -0.38858
15: 2026-01-01             Pakistan           PKR     1080.00 -0.36941
16: 2026-01-01           Azerbaijan           AZN        6.65 -0.36176
17: 2026-01-01                 Oman           OMR        1.53 -0.35065
18: 2026-01-01              Romania           RON       17.45 -0.35006
19: 2026-01-01            Venezuela           VES     1370.00 -0.33912
20: 2026-01-01              Moldova           MDL       70.00 -0.33151
21: 2026-01-01             Thailand           THB      135.00 -0.29738
22: 2026-01-01            Guatemala           GTQ       33.00 -0.29659
23: 2026-01-01               Brazil           BRL       23.90 -0.27282
24: 2026-01-01               Kuwait           KWD        1.40 -0.25788
25: 2026-01-01                Qatar           QAR       17.00 -0.23708
26: 2026-01-01            Nicaragua           NIO      174.00 -0.22370
27: 2026-01-01              Bahrain           BHD        1.80 -0.21985
28: 2026-01-01          New Zealand           NZD        8.60 -0.19312
29: 2026-01-01              Hungary           HUF     1660.00 -0.18383
30: 2026-01-01                 Peru           PEN       16.90 -0.17817
31: 2026-01-01             Honduras           HNL      134.00 -0.17313
32: 2026-01-01         Saudi Arabia           SAR       19.00 -0.17214
33: 2026-01-01 United Arab Emirates           AED       19.00 -0.15476
34: 2026-01-01              Lebanon           LBP   480000.00 -0.12416
35: 2026-01-01                Chile           CLP     4790.00 -0.11446
36: 2026-01-01       Czech Republic           CZK      115.00 -0.10209
37: 2026-01-01            Argentina           ARS     8000.00 -0.09584
38: 2026-01-01               Canada           CAD        7.70 -0.09435
39: 2026-01-01            Australia           AUD        8.50 -0.06951
40: 2026-01-01              Croatia           EUR        4.92 -0.06729
41: 2026-01-01            Singapore           SGD        7.45 -0.05521
42: 2026-01-01               Turkey           TRY      255.00 -0.03537
43: 2026-01-01           Costa Rica           CRC     2990.00 -0.01301
44: 2026-01-01        United States           USD        6.12  0.00000
45: 2026-01-01               Mexico           MXN      109.00  0.00764
46: 2026-01-01             Colombia           COP    22900.00  0.01495
47: 2026-01-01               Poland           PLN       22.70  0.02157
48: 2026-01-01               Israel           ILS       20.00  0.03985
49: 2026-01-01            Euro area           EUR        6.08  0.15262
50: 2026-01-01              Britain           GBP        5.29  0.15701
51: 2026-01-01              Denmark           DKK       46.00  0.16709
52: 2026-01-01               Sweden           SEK       67.00  0.18611
53: 2026-01-01               Norway           NOK       76.00  0.22802
54: 2026-01-01              Uruguay           UYU      339.00  0.43114
55: 2026-01-01          Switzerland           CHF        7.30  0.48433
          date                 name currency_code local_price      USD
        <IDat>               <char>        <char>       <num>    <num>

3.3 GDP調整後ビッグマック指数算出パート

3.3.1 big_mac_gdp_data の作成

  • 自国通貨建て1人当たりGDPが 0 以下で無い国を抽出し big_mac_gdp_data を作成。
big_mac_gdp_data = big_mac_data[GDP_local > 0]
glimpse(big_mac_gdp_data)
Rows: 2,351
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> 8709.072, 21775.120, 3501.438, 28768.448, 22340.553, 498…
$ GDP_local     <dbl> 8709.072, 33742.635, 6351.375, 17777.384, 33191.468, 253…
$ 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…

3.3.2 GDP調整後ビッグマック指数算出対象国・地域

  • 線形回帰によるGDP調整後ビッグマック指数算出対象国・地域。 以降「線形回帰によるGDP調整後ビッグマック指数算出対象国・地域」は「線形回帰対象国」と表記する。
regression_countries = c('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月以降、下記の国々が線形回帰対象国に加えられている。
regression_addons_2021 = c('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 = big_mac_gdp_data[iso_a3 %in% regression_countries |
  (iso_a3 %in% regression_addons_2021 & date >= as.Date('2021-01-01'))
]
glimpse(big_mac_gdp_data)
Rows: 2,095
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> 8709.072, 21775.120, 3501.438, 28768.448, 22340.553, 498…
$ GDP_local     <dbl> 8709.072, 33742.635, 6351.375, 17777.384, 33191.468, 253…
$ 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…

3.3.3 米ドル建て1人当たりGDP( GDP_bigmac )の算出

  • 線形回帰対象国の「自国通貨建てビッグマック価格に対する自国通貨建て1人当たりGDPの比」に「米国のビッグマック価格」を乗じた結果を「線形回帰対象国の米ドル建て1人当たりGDP」とする( GDP_bigmac )。
big_mac_gdp_data %>%
    .[,GDP_bigmac := GDP_local / (local_price / .SD[iso_a3=='USA']$local_price), by=date]
glimpse(big_mac_gdp_data)  
Rows: 2,095
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> 8709.072, 21775.120, 3501.438, 28768.448, 22340.553, 498…
$ GDP_local     <dbl> 8709.072, 33742.635, 6351.375, 17777.384, 33191.468, 253…
$ 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> 7803.329, 29182.819, 4822.739, 20958.600, 26087.329, 450…
  • よって米国の1人当たりGDP( GDP_local )と米ドル建て1人当たりGDP( GDP_bigmac )は同一となる。
big_mac_gdp_data[,.SD[iso_a3=='USA'],] %>% .[,.(currency_code ,GDP_local,GDP_bigmac)]
    currency_code GDP_local GDP_bigmac
           <char>     <num>      <num>
 1:           USD  34496.24   34496.24
 2:           USD  36312.78   36312.78
 3:           USD  37101.45   37101.45
 4:           USD  37945.76   37945.76
 5:           USD  39405.35   39405.35
 6:           USD  41641.62   41641.62
 7:           USD  41641.62   41641.62
 8:           USD  44034.26   44034.26
 9:           USD  44034.26   44034.26
10:           USD  46216.85   46216.85
11:           USD  47943.35   47943.35
12:           USD  48470.55   48470.55
13:           USD  48470.55   48470.55
14:           USD  47102.43   47102.43
15:           USD  48586.29   48586.29
16:           USD  48586.29   48586.29
17:           USD  50008.11   50008.11
18:           USD  50008.11   50008.11
19:           USD  51736.74   51736.74
20:           USD  51736.74   51736.74
21:           USD  53363.90   53363.90
22:           USD  53363.90   53363.90
23:           USD  55263.82   55263.82
24:           USD  55263.82   55263.82
25:           USD  57006.93   57006.93
26:           USD  57006.93   57006.93
27:           USD  58179.70   58179.70
28:           USD  58179.70   58179.70
29:           USD  60292.98   60292.98
30:           USD  60292.98   60292.98
31:           USD  63165.28   63165.28
32:           USD  63165.28   63165.28
33:           USD  65561.32   65561.32
34:           USD  65561.32   65561.32
35:           USD  64518.06   64518.06
36:           USD  64518.06   64518.06
37:           USD  71365.34   71365.34
38:           USD  71365.34   71365.34
39:           USD  77944.10   77944.10
40:           USD  77944.10   77944.10
41:           USD  82523.26   82523.26
42:           USD  82523.26   82523.26
43:           USD  86144.80   86144.80
    currency_code GDP_local GDP_bigmac
           <char>     <num>      <num>
all(big_mac_gdp_data[,.SD[iso_a3=='USA'],] %>% .[,.(GDP_local)] == big_mac_gdp_data[,.SD[iso_a3=='USA'],] %>% .[,.(GDP_bigmac)] )
[1] TRUE

3.3.4 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
    ),
    by = date]
glimpse(big_mac_gdp_data)
Rows: 2,095
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> 8709.072, 21775.120, 3501.438, 28768.448, 22340.553, 498…
$ GDP_local     <dbl> 8709.072, 33742.635, 6351.375, 17777.384, 33191.468, 253…
$ 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> 7803.329, 29182.819, 4822.739, 20958.600, 26087.329, 450…
$ adj_price     <dbl> 1.926857, 2.318602, 1.872242, 2.167906, 2.261882, 1.8665…
  • よって米国の自国通貨建てビッグマック価格(=米ドル換算ビッグマック価格)とGDP調整後米ドル換算ビッグマック価格には差異が出る場合がある。
big_mac_gdp_data %>% .[,.SD[iso_a3=='USA']] %>% .[,.(name,currency_code,local_price,dollar_price,adj_price)] %>% tail()
            name currency_code local_price dollar_price adj_price
          <char>        <char>       <num>        <num>     <num>
1: United States           USD        5.36         5.36  4.912427
2: United States           USD        5.58         5.58  5.188664
3: United States           USD        5.69         5.69  5.270658
4: United States           USD        5.69         5.69  5.380510
5: United States           USD        5.79         5.79  5.361470
6: United States           USD        6.12         6.12  6.195706

3.3.5 big_mac_adj_index の作成

  • 米ドル換算ビッグマック価格が存在し、かつ線形回帰対象国であり、かつ対象国である行を抽出し big_mac_adj_index を作成。
big_mac_adj_index = big_mac_gdp_data[
    !is.na(dollar_price) &
    (
        iso_a3 %in% regression_countries |
        iso_a3 %in% regression_addons_2021 & date >= '2021-01-01'
    ) &
    iso_a3 %in% big_mac_countries
    ,.(date, iso_a3, currency_code, name, local_price, dollar_ex, dollar_price, GDP_bigmac, adj_price)]

3.3.6 ビッグマック指数の作成

  • 日付ごとに「米ドル換算ビッグマック価格( dollar_price )とGDP調整後米ドル換算ビッグマック価格( adj_price )の比」の「米ドルでのビッグマック価格と米国のGDP調整後ビッグマック価格の比」からの乖離をGDP調整後ビッグマック指数( USD 列)とする。
for(currency in base_currencies) {
    big_mac_adj_index[
        ,                           
        (currency) :=               
            (                       
                dollar_price / adj_price  
            ) /
            (
                .SD[currency_code == currency]$dollar_price /
                .SD[currency_code == currency]$adj_price
            ) -
            1,                      
        by=date   
    ]
}
  • 求めたGDP調整後ビッグマック指数を小数点5位で四捨五入
big_mac_adj_index[, (base_currencies) := round(.SD, 5L), .SDcols=base_currencies]
glimpse(big_mac_adj_index)
Rows: 1,707
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> 7803.329, 29182.819, 4822.739, 20958.600, 26087.329, 450…
$ adj_price     <dbl> 1.926857, 2.318602, 1.872242, 2.167906, 2.261882, 1.8665…
$ USD           <dbl> 0.39937, -0.28286, -0.05060, 0.49352, -0.07552, 0.41651,…

3.3.7 GDP調整後ビッグマック指数

  • 直近のGDP調整後ビッグマック指数。USD 列が各通貨( currency_code )の米ドルに対するビッグマック指数
big_mac_adj_index %>% .[,.SD[max(date)==date]] %>% .[ ,.(date,name,currency_code,local_price,USD)] %>% .[order(USD),]
          date                 name currency_code local_price      USD
        <IDat>               <char>        <char>       <num>    <num>
 1: 2026-01-01               Taiwan           TWD       78.00 -0.59583
 2: 2026-01-01            Hong Kong           HKD       25.00 -0.50384
 3: 2026-01-01                Japan           JPY      480.00 -0.46506
 4: 2026-01-01            Indonesia           IDR    42500.00 -0.45940
 5: 2026-01-01                India           INR      227.00 -0.44805
 6: 2026-01-01                Egypt           EGP      125.00 -0.41955
 7: 2026-01-01          Philippines           PHP      169.00 -0.38229
 8: 2026-01-01              Vietnam           VND    76000.00 -0.37290
 9: 2026-01-01          South Korea           KRW     5500.00 -0.32091
10: 2026-01-01             Malaysia           MYR       13.75 -0.31314
11: 2026-01-01              Ukraine           UAH      139.00 -0.31100
12: 2026-01-01         South Africa           ZAR       54.90 -0.28384
13: 2026-01-01                Qatar           QAR       17.00 -0.25352
14: 2026-01-01                China           CNY       25.50 -0.25019
15: 2026-01-01               Jordan           JOD        2.50 -0.23119
16: 2026-01-01              Romania           RON       17.45 -0.21578
17: 2026-01-01                 Oman           OMR        1.53 -0.21121
18: 2026-01-01           Azerbaijan           AZN        6.65 -0.16116
19: 2026-01-01             Pakistan           PKR     1080.00 -0.13932
20: 2026-01-01               Kuwait           KWD        1.40 -0.13870
21: 2026-01-01              Moldova           MDL       70.00 -0.12265
22: 2026-01-01          New Zealand           NZD        8.60 -0.11147
23: 2026-01-01            Singapore           SGD        7.45 -0.09398
24: 2026-01-01             Thailand           THB      135.00 -0.07904
25: 2026-01-01              Bahrain           BHD        1.80 -0.07760
26: 2026-01-01 United Arab Emirates           AED       19.00 -0.07574
27: 2026-01-01            Guatemala           GTQ       33.00 -0.06571
28: 2026-01-01               Brazil           BRL       23.90 -0.05539
29: 2026-01-01         Saudi Arabia           SAR       19.00 -0.03761
30: 2026-01-01            Australia           AUD        8.50 -0.02373
31: 2026-01-01              Hungary           HUF     1660.00 -0.01050
32: 2026-01-01               Canada           CAD        7.70 -0.00950
33: 2026-01-01        United States           USD        6.12  0.00000
34: 2026-01-01            Nicaragua           NIO      174.00  0.05432
35: 2026-01-01       Czech Republic           CZK      115.00  0.05642
36: 2026-01-01                 Peru           PEN       16.90  0.07826
37: 2026-01-01             Honduras           HNL      134.00  0.12164
38: 2026-01-01                Chile           CLP     4790.00  0.12383
39: 2026-01-01               Israel           ILS       20.00  0.12891
40: 2026-01-01              Croatia           EUR        4.92  0.14740
41: 2026-01-01            Argentina           ARS     8000.00  0.19772
42: 2026-01-01              Denmark           DKK       46.00  0.25032
43: 2026-01-01           Costa Rica           CRC     2990.00  0.25740
44: 2026-01-01               Poland           PLN       22.70  0.26073
45: 2026-01-01               Turkey           TRY      255.00  0.26162
46: 2026-01-01               Norway           NOK       76.00  0.27371
47: 2026-01-01               Mexico           MXN      109.00  0.30742
48: 2026-01-01               Sweden           SEK       67.00  0.31709
49: 2026-01-01              Britain           GBP        5.29  0.31941
50: 2026-01-01            Euro area           EUR        6.08  0.33390
51: 2026-01-01             Colombia           COP    22900.00  0.34919
52: 2026-01-01          Switzerland           CHF        7.30  0.52769
53: 2026-01-01              Uruguay           UYU      339.00  0.83855
          date                 name currency_code local_price      USD
        <IDat>               <char>        <char>       <num>    <num>

4 データ出所

  • The Economist https://www.economist.com/big-mac-index

5 公表頻度

  • 年次

6 最終更新

Sys.time()
[1] "2026-06-07 13:43:36 JST"

7 R & Quarto

R.Version()$version.string
[1] "R version 4.5.3 Patched (2026-03-11 r89773 ucrt)"
quarto::quarto_version()
[1] '1.9.38'

8 著者

  • アセット・マネジメント・コンサルティング株式会社 https://www.am-consulting.co.jp
  • 法人概要 https://www.contact.am-consulting.co.jp/company-brochure/
  • 代表取締役 三竹道雄 https://www.contact.am-consulting.co.jp/mitake-michio/
  • 日本の法令と条文の検索 https://www.laws.am-consulting.co.jp
  • Science and Engineering Cafe on the Net https://www.saecanet.com
  • Science and Engineering Cafe on the Net(補助サイト) https://www.library.saecanet.com
  • twitter https://twitter.com/amc_corporation
  • youtube https://www.youtube.com/user/michiomitake
  • github https://github.com/am-consulting