Rで世界の軍事力を分析

もう良い年なので世界の軍事力くらい知っておかなければ恥ずかしくて街を歩けない。
そういうことで、最新の世界の軍事力について調べてみた。
データは、「Global Firepower – 2013 World Military Strength Ranking」を参照した。
なんでも、兵力、陸海空の装備力、ロジスティックなど44項目を解析して「PwrIndx」という指標を出してランク付けしています。

最新の軍事力ランクは以下。

1 United States of America PwrIndx: 0.2475
2 Russia PwrIndx: 0.2618
3 China PwrIndx: 0.3351
4 India PwrIndx: 0.4346
5 United Kingdom PwrIndx: 0.5185
6 France PwrIndx: 0.6163
7 Germany PwrIndx: 0.6491
8 South Korea PwrIndx: 0.6547
9 Italy PwrIndx: 0.6838
10 Brazil PwrIndx: 0.6912
<中略>
17 Japan PwrIndx: 0.7918

我が日本は、17位となっています。
知らなかったのが、インドの4位。核保有国は軒並み上位ランクしていますが(※このランクには核兵力は換算していない)、UKを上回っているとは知らなかった。同じく先の大戦で敗戦国となったドイツが7位というのも驚きです。EU内での経済力がこのような状況を後押ししているのか。

早速関係性を調べていきます。

データは、8つの大項目の中に44項目が上げられています。
一気に解析しようとすると大変なので、影響度を調査するためにデータを8つの項目に分けていきます。
68カ国のデータについて指標「PwrIndx」が与えられていますが、ここではトップ5と日本のデータを使って調べていきます。

8つの項目は以下。

・MANPOWER
・LAND SYSTEMS
・AIR POWER
・NAVAL POWER
・RESOURCES (PETROLEUM)
・LOGISTICAL
・FINANCIAL (in USD)
・GEOGRAPHY (in km)

そしてこの項目を分割

> MP <- data[,3:9] > LS <- data[,10:16] > AP <- data[,17:18] > NP <- data[,19:27] > RS <- data[,28:30] > LG <- data[,31:36] > FN <- data[,37:40] > GG <- data[,41:44]

この後にそれぞれのデータに対して、目的変数をPwrIndxとして回帰分析をおこないます。

> lm.mp<- lm(PwrIndx~.,data=MP) > lm.ls<- lm(PwrIndx~.,data=LS) > lm.ap<- lm(PwrIndx~.,data=AP) > lm.np<- lm(PwrIndx~.,data=NP) > lm.rs<- lm(PwrIndx~.,data=RS) > lm.lg<- lm(PwrIndx~.,data=LG) > lm.fn<- lm(PwrIndx~.,data=FN) > lm.gg<- lm(PwrIndx~.,data=GG)

summary()関数を使ってデータの概要を見ます。
しかしここで問題が、NAが連発するわけです。
データによってNAが出る原因がわからないわけです。
その項目で指数「PwrIndx」が説明し切れないのか、データに問題があるのか・・・。

NAが出るカテゴリはおいておいて、解析できるものから調べていきます。
対照表は以下。

summary(lm.mp)・・・✕
summary(lm.ls)・・・✕
summary(lm.ap)・・・◯
summary(lm.np)・・・✕
summary(lm.rs)・・・◯
summary(lm.lg)・・・✕
summary(lm.fn)・・・◯
summary(lm.gg)・・・◯

具体的な戦力ということで、陸海のデータが見られないのは問題なので調べるとして、あとはとりあえず置いておく。
調べる項目は、以下。
・RESOURCES (PETROLEUM)
・FINANCIAL (in USD)
・GEOGRAPHY (in km)

RESOURCES (PETROLEUM)から。
石油に関するデータ項目はとても重要。これがないとどんなに強力な兵器も使えないですから。

まずは石油関連データの相関から。

> cor(RS)
OilProduction OilConsumption ProvenOilReserves
OilProduction 1.0000000 0.55703930 0.81970964
OilConsumption 0.5570393 1.00000000 0.02555608
ProvenOilReserves 0.8197096 0.02555608 1.00000000

OilProductionとProvenOilReservesに強い相関が。
そりゃそうでしょ。産油量と消費量との相関はあまり見られない感じですね。

> summary(lm.rs)

Call:
lm(formula = PwrIndx ~ ., data = RS)

Residuals:
1 2 3 4 5 6
0.004355 0.041808 -0.069292 -0.111552 -0.071036 0.205716

Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 6.298e-01 1.757e-01 3.585 0.0698 .
OilProduction -1.069e-08 8.665e-08 -0.123 0.9131
OilConsumption -9.707e-09 3.559e-08 -0.273 0.8106
ProvenOilReserves -4.567e-12 1.533e-11 -0.298 0.7939

Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ‘ 1

Residual standard error: 0.1822 on 2 degrees of freedom
Multiple R-squared: 0.6829, Adjusted R-squared: 0.2073
F-statistic: 1.436 on 3 and 2 DF, p-value: 0.4356

結果、重相関係数が0.2073と低い値が。
石油のデータだけでは説明が仕切れないということ。
ひとまずAR群をstep()関数を使ってAICを出してみる。

> step(lm.rs)
Start: AIC=-19.02
PwrIndx ~ OilProduction + OilConsumption + ProvenOilReserves

Df Sum of Sq RSS AIC
- OilProduction 1 0.00050528 0.066883 -20.980
- OilConsumption 1 0.00246907 0.068846 -20.806
- ProvenOilReserves 1 0.00294602 0.069323 -20.764
0.066377 -19.025

Step: AIC=-20.98
PwrIndx ~ OilConsumption + ProvenOilReserves

Df Sum of Sq RSS AIC
0.066883 -20.980
- OilConsumption 1 0.040536 0.107419 -20.137
- ProvenOilReserves 1 0.098598 0.165481 -17.544

Call:
lm(formula = PwrIndx ~ OilConsumption + ProvenOilReserves, data = RS)

Coefficients:
(Intercept) OilConsumption ProvenOilReserves
6.443e-01 -1.382e-08 -6.402e-12

RESOURCES (PETROLEUM)のAICは-20.98。

続いて経済力を調査。

> cor(FN)
DefenseBudget ExternalDebt ReservesofForeignExchangeandGold
DefenseBudget 1.0000000 0.7789050 -0.2070999
ExternalDebt 0.7789050 1.0000000 -0.4770962
ReservesofForeignExchangeandGold -0.2070999 -0.4770962 1.0000000
PurchasingPowerParity 0.8358629 0.4613563 0.3300478
PurchasingPowerParity
DefenseBudget 0.8358629
ExternalDebt 0.4613563
ReservesofForeignExchangeandGold 0.3300478
PurchasingPowerParity 1.0000000

ここで注目すべきは国防費。
国防費と対外債務(ExternalDebt)、購買力平価(PurchasingPowerParity)が強い相関にあります。つまり経済力と国防費は強い関係性があるようです。一方外国準備高(ReservesofForeignExchangeandGold)は国防費と負の相関関係にあります。外貨準備はストックなので、フローである国防費とは逆の関係にある、と妄想してみる。

> summary(lm.fn)

Call:
lm(formula = PwrIndx ~ ., data = FN)

Residuals:
1 2 3 4 5 6
0.01424 -0.14763 -0.09610 0.01467 -0.09245 0.30727

Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 4.352e-01 3.763e-01 1.157 0.454
DefenseBudget -8.052e-09 3.619e-08 -0.222 0.861
ExternalDebt 2.199e-08 5.168e-08 0.426 0.744
ReservesofForeignExchangeandGold 2.019e-08 3.962e-07 0.051 0.968
PurchasingPowerParity 1.772e-07 1.657e-05 0.011 0.993

Residual standard error: 0.3666 on 1 degrees of freedom
Multiple R-squared: 0.3579, Adjusted R-squared: -2.21
F-statistic: 0.1394 on 4 and 1 DF, p-value: 0.9447

重相関係数が-2.21と非常に当てはまりの非常に悪い状況に。
step()関数でAICを見てみる。

> step(lm.fn)
Start: AIC=-12.79
PwrIndx ~ DefenseBudget + ExternalDebt + ReservesofForeignExchangeandGold +
PurchasingPowerParity

Df Sum of Sq RSS AIC
- PurchasingPowerParity 1 0.0000154 0.13442 -14.791
- ReservesofForeignExchangeandGold 1 0.0003491 0.13476 -14.776
- DefenseBudget 1 0.0066514 0.14106 -14.502
- ExternalDebt 1 0.0243470 0.15876 -13.793
0.13441 -12.792

Step: AIC=-14.79
PwrIndx ~ DefenseBudget + ExternalDebt + ReservesofForeignExchangeandGold

Df Sum of Sq RSS AIC
- ReservesofForeignExchangeandGold 1 0.002982 0.13740 -16.660
- ExternalDebt 1 0.025406 0.15983 -15.752
0.13442 -14.791
- DefenseBudget 1 0.068611 0.20303 -14.317

Step: AIC=-16.66
PwrIndx ~ DefenseBudget + ExternalDebt

Df Sum of Sq RSS AIC
- ExternalDebt 1 0.023448 0.16085 -17.714
0.13740 -16.660
- DefenseBudget 1 0.066239 0.20364 -16.299

Step: AIC=-17.71
PwrIndx ~ DefenseBudget

Df Sum of Sq RSS AIC
- DefenseBudget 1 0.048488 0.20934 -18.133
0.16085 -17.714

Step: AIC=-18.13
PwrIndx ~ 1

Call:
lm(formula = PwrIndx ~ 1, data = FN)

Coefficients:
(Intercept)
0.4316

見るも無残なAIC-17.71。
PwrIndxにほぼ影響を与えていないことがわかります。
経済と戦力は直接的な関係ないのか。

続いて、地理的影響。
まずは各変数同士の相関関係を調査。

> cor(GG)
SquareLandArea Coastline SharedBorder Waterways
SquareLandArea 1.0000000 0.52138741 0.82184341 0.8708503
Coastline 0.5213874 1.00000000 0.06255786 0.3327418
SharedBorder 0.8218434 0.06255786 1.00000000 0.8868503
Waterways 0.8708503 0.33274180 0.88685031 1.0000000

注目すべきは、三角州(?)と運河の相関。
非常に高い相関になっているけど、これは地理的な要件上当たり前。
だけど、このデータの信憑性が高いことはわかる。

回帰分析を。

> summary(lm.gg)

Call:
lm(formula = PwrIndx ~ ., data = GG)

Residuals:
1 2 3 4 5 6
-0.004217 0.002901 -0.001375 0.001516 0.002935 -0.001760

Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 3.147e-01 1.042e-02 30.19 0.0211 *
SquareLandArea -5.847e-08 1.372e-09 -42.63 0.0149 *
Coastline 1.681e-05 4.748e-07 35.41 0.0180 *
SharedBorder 1.324e-05 1.041e-06 12.72 0.0499 *
Waterways 4.199e-07 1.609e-07 2.61 0.2330

Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ‘ 1

Residual standard error: 0.006489 on 1 degrees of freedom
Multiple R-squared: 0.9998, Adjusted R-squared: 0.999
F-statistic: 1243 on 4 and 1 DF, p-value: 0.02127

キタ。重相関係数0.999。この要件は相当デカイです。
戦力総合ランクに相当大きい影響を与えている。
気分が乗ってきた所でAIC。

> step(lm.gg)
Start: AIC=-61.2
PwrIndx ~ SquareLandArea + Coastline + SharedBorder + Waterways

Df Sum of Sq RSS AIC
0.000042 -61.203
- Waterways 1 0.000287 0.000329 -50.870
- SharedBorder 1 0.006813 0.006856 -32.647
- Coastline 1 0.052782 0.052824 -20.395
- SquareLandArea 1 0.076512 0.076554 -18.169

Call:
lm(formula = PwrIndx ~ SquareLandArea + Coastline + SharedBorder +
Waterways, data = GG)

Coefficients:
(Intercept) SquareLandArea Coastline SharedBorder Waterways
3.147e-01 -5.847e-08 1.681e-05 1.324e-05 4.199e-07

あれ? AICが-61.2、だと?
よくわからなくなってきたなぁ。

AICをまとめると以下の通り

・RESOURCES (PETROLEUM):-20.98/重相関係数 0.2073
・FINANCIAL (in USD):-2.21/重相関係数 -2.21
・GEOGRAPHY (in km):-61.2/重相関係数 0.999

個別にAICを見てみると個別データの解析に意味はない。
個別に重相関係数を見てみると重み付けはわかる。経済指標よりもロジスティックや地理的な要素に重みをつけていることがわかる。
AICだけみると総合的な指標になっているようだ。なかなか精度高いデータじゃないか。

次回は細かく各項目を見ていきます。

No Responses to "Rで世界の軍事力を分析"

Leave a Reply

%d人のブロガーが「いいね」をつけました。