R のジニ係数の計算方法 (例あり)
イタリアの統計学者コラード・ジニにちなんで名付けられたジニ係数は、人口の所得分布を測定する方法です。
ジニ係数の値の範囲は 0 から 1 で、値が大きいほど所得格差が大きいことを表します。
- 0 は完全な収入の平等を表します (誰もが同じ収入を持っています)
- 1 は完全な所得不平等を表します (1 人の個人がすべての所得を持っています)
国別のジニ係数のリストは、こちらでご覧いただけます。
次の例は、 DescToolsパッケージのGini()関数を使用して R でジニ係数を計算する 2 つの方法を示しています。
例 1: 個人所得を使用してジニ係数を計算する
次の 10 人の年収リストがあるとします。
収入: 50,000ドル、50,000ドル、70,000ドル、70,000ドル、70,000ドル、90,000ドル、150,000ドル、150,000ドル、150,000ドル、150,000ドル
次のコードは、 Gini()関数を使用してこの母集団のジニ係数を計算する方法を示しています。
library (DescTools) #define vector of income x <- c(50, 50, 70, 70, 70, 90, 150, 150, 150, 150) #calculate Gini coefficient Gini(x, unbiased= FALSE ) [1] 0.226
ジニ係数は0.226であることがわかります。
注: 現実のシナリオでは、特定の国の個人の収入は何十万もの異なるものになりますが、この例では、単純な説明として 10 人の個人を使用しました。
例 2: 頻度を使用してジニ係数を計算する
特定の母集団内で特定の収入を持つ個人の数を示す次の度数表があるとします。
次のコードは、 Gini()関数を使用してこの母集団のジニ係数を計算する方法を示しています。
library (DescTools) #define vector of income x <- c(10, 20, 25, 55, 70, 90, 110, 115, 130) #define vector of frequencies n <- c(6, 7, 7, 14, 22, 20, 8, 4, 1) #calculate Gini coefficient Gini(x, n, unbiased= FALSE ) [1] 0.2632289
ジニ係数は0.26232であることがわかります。
注: ここのDescToolsパッケージから、 Gini()関数の完全なドキュメントを見つけることができます。
追加リソース
次のチュートリアルでは、Excel でジニ係数を計算する方法とローレンツ曲線を作成する方法を説明します。