my-markdown-library 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/F24LS_md/ Lecture 4 - Public.md +347 -0
- data/F24LS_md/Lecture 1 - Introduction and Overview.md +327 -0
- data/F24LS_md/Lecture 10 - Development_.md +631 -0
- data/F24LS_md/Lecture 11 - Econometrics.md +345 -0
- data/F24LS_md/Lecture 12 - Finance.md +692 -0
- data/F24LS_md/Lecture 13 - Environmental Economics.md +299 -0
- data/F24LS_md/Lecture 15 - Conclusion.md +272 -0
- data/F24LS_md/Lecture 2 - Demand.md +349 -0
- data/F24LS_md/Lecture 3 - Supply.md +329 -0
- data/F24LS_md/Lecture 5 - Production C-D.md +291 -0
- data/F24LS_md/Lecture 6 - Utility and Latex.md +440 -0
- data/F24LS_md/Lecture 7 - Inequality.md +607 -0
- data/F24LS_md/Lecture 8 - Macroeconomics.md +704 -0
- data/F24LS_md/Lecture 8 - Macro.md +700 -0
- data/F24LS_md/Lecture 9 - Game Theory_.md +436 -0
- data/F24LS_md/summary.yaml +105 -0
- data/F24Lec_MD/LecNB_summary.yaml +206 -0
- data/F24Lec_MD/lec01/lec01.md +267 -0
- data/F24Lec_MD/lec02/Avocados_demand.md +425 -0
- data/F24Lec_MD/lec02/Demand_Steps_24.md +126 -0
- data/F24Lec_MD/lec02/PriceElasticity.md +83 -0
- data/F24Lec_MD/lec02/ScannerData_Beer.md +171 -0
- data/F24Lec_MD/lec02/demand-curve-Fa24.md +213 -0
- data/F24Lec_MD/lec03/3.0-CubicCostCurve.md +239 -0
- data/F24Lec_MD/lec03/3.1-Supply.md +274 -0
- data/F24Lec_MD/lec03/3.2-sympy.md +332 -0
- data/F24Lec_MD/lec03/3.3a-california-energy.md +120 -0
- data/F24Lec_MD/lec03/3.3b-a-really-hot-tuesday.md +121 -0
- data/F24Lec_MD/lec04/lec04-CSfromSurvey-closed.md +335 -0
- data/F24Lec_MD/lec04/lec04-CSfromSurvey.md +331 -0
- data/F24Lec_MD/lec04/lec04-Supply-Demand-closed.md +519 -0
- data/F24Lec_MD/lec04/lec04-Supply-Demand.md +514 -0
- data/F24Lec_MD/lec04/lec04-four-plot-24.md +34 -0
- data/F24Lec_MD/lec04/lec04-four-plot.md +34 -0
- data/F24Lec_MD/lec05/Lec5-Cobb-Douglas.md +131 -0
- data/F24Lec_MD/lec05/Lec5-CobbD-AER1928.md +283 -0
- data/F24Lec_MD/lec06/6.1-Sympy-Differentiation.md +253 -0
- data/F24Lec_MD/lec06/6.2-3D-utility.md +287 -0
- data/F24Lec_MD/lec06/6.3-QuantEcon-Optimization.md +399 -0
- data/F24Lec_MD/lec06/6.4-latex.md +138 -0
- data/F24Lec_MD/lec06/6.5-Edgeworth.md +269 -0
- data/F24Lec_MD/lec07/7.1-inequality.md +283 -0
- data/F24Lec_MD/lec07/7.2-historical-inequality.md +237 -0
- data/F24Lec_MD/lec08/macro-fred-api.md +313 -0
- data/F24Lec_MD/lec09/lecNB-prisoners-dilemma.md +88 -0
- data/F24Lec_MD/lec10/Lec10.2-waterguard.md +401 -0
- data/F24Lec_MD/lec10/lec10.1-mapping.md +199 -0
- data/F24Lec_MD/lec11/11.1-slr.md +305 -0
- data/F24Lec_MD/lec11/11.2-mlr.md +171 -0
- data/F24Lec_MD/lec12/Lec12-4-PersonalFinance.md +590 -0
- data/F24Lec_MD/lec12/lec12-1_Interest_Payments.md +267 -0
- data/F24Lec_MD/lec12/lec12-2-stocks-options.md +235 -0
- data/F24Lec_MD/lec13/Co2_ClimateChange.md +139 -0
- data/F24Lec_MD/lec13/ConstructingMAC.md +213 -0
- data/F24Lec_MD/lec13/EmissionsTracker.md +170 -0
- data/F24Lec_MD/lec13/KuznetsHypothesis.md +219 -0
- data/F24Lec_MD/lec13/RoslingPlots.md +217 -0
- data/F24Lec_MD/lec15/vibecession.md +485 -0
- data/F24Textbook_MD/00-intro/index.md +292 -0
- data/F24Textbook_MD/01-demand/01-demand.md +152 -0
- data/F24Textbook_MD/01-demand/02-example.md +131 -0
- data/F24Textbook_MD/01-demand/03-log-log.md +284 -0
- data/F24Textbook_MD/01-demand/04-elasticity.md +248 -0
- data/F24Textbook_MD/01-demand/index.md +15 -0
- data/F24Textbook_MD/02-supply/01-supply.md +203 -0
- data/F24Textbook_MD/02-supply/02-eep147-example.md +86 -0
- data/F24Textbook_MD/02-supply/03-sympy.md +138 -0
- data/F24Textbook_MD/02-supply/04-market-equilibria.md +204 -0
- data/F24Textbook_MD/02-supply/index.md +16 -0
- data/F24Textbook_MD/03-public/govt-intervention.md +73 -0
- data/F24Textbook_MD/03-public/index.md +10 -0
- data/F24Textbook_MD/03-public/surplus.md +351 -0
- data/F24Textbook_MD/03-public/taxes-subsidies.md +282 -0
- data/F24Textbook_MD/04-production/index.md +15 -0
- data/F24Textbook_MD/04-production/production.md +178 -0
- data/F24Textbook_MD/04-production/shifts.md +296 -0
- data/F24Textbook_MD/05-utility/budget-constraints.md +166 -0
- data/F24Textbook_MD/05-utility/index.md +15 -0
- data/F24Textbook_MD/05-utility/utility.md +136 -0
- data/F24Textbook_MD/06-inequality/historical-inequality.md +253 -0
- data/F24Textbook_MD/06-inequality/index.md +15 -0
- data/F24Textbook_MD/06-inequality/inequality.md +226 -0
- data/F24Textbook_MD/07-game-theory/bertrand.md +257 -0
- data/F24Textbook_MD/07-game-theory/cournot.md +333 -0
- data/F24Textbook_MD/07-game-theory/equilibria-oligopolies.md +96 -0
- data/F24Textbook_MD/07-game-theory/expected-utility.md +61 -0
- data/F24Textbook_MD/07-game-theory/index.md +19 -0
- data/F24Textbook_MD/07-game-theory/python-classes.md +340 -0
- data/F24Textbook_MD/08-development/index.md +35 -0
- data/F24Textbook_MD/09-macro/CentralBanks.md +101 -0
- data/F24Textbook_MD/09-macro/Indicators.md +77 -0
- data/F24Textbook_MD/09-macro/fiscal_policy.md +36 -0
- data/F24Textbook_MD/09-macro/index.md +14 -0
- data/F24Textbook_MD/09-macro/is_curve.md +76 -0
- data/F24Textbook_MD/09-macro/phillips_curve.md +70 -0
- data/F24Textbook_MD/10-finance/index.md +10 -0
- data/F24Textbook_MD/10-finance/options.md +178 -0
- data/F24Textbook_MD/10-finance/value-interest.md +60 -0
- data/F24Textbook_MD/11-econometrics/index.md +16 -0
- data/F24Textbook_MD/11-econometrics/multivariable.md +218 -0
- data/F24Textbook_MD/11-econometrics/reading-econ-papers.md +25 -0
- data/F24Textbook_MD/11-econometrics/single-variable.md +483 -0
- data/F24Textbook_MD/11-econometrics/statsmodels.md +58 -0
- data/F24Textbook_MD/12-environmental/KuznetsHypothesis-Copy1.md +187 -0
- data/F24Textbook_MD/12-environmental/KuznetsHypothesis.md +187 -0
- data/F24Textbook_MD/12-environmental/MAC.md +254 -0
- data/F24Textbook_MD/12-environmental/index.md +36 -0
- data/F24Textbook_MD/LICENSE.md +11 -0
- data/F24Textbook_MD/intro.md +26 -0
- data/F24Textbook_MD/references.md +25 -0
- data/F24Textbook_MD/summary.yaml +414 -0
- metadata +155 -0
@@ -0,0 +1,253 @@
|
|
1
|
+
---
|
2
|
+
title: historical-inequality
|
3
|
+
type: textbook
|
4
|
+
source_path: content/06-inequality/historical-inequality.ipynb
|
5
|
+
chapter: 6
|
6
|
+
---
|
7
|
+
|
8
|
+
```python
|
9
|
+
import pandas as pd
|
10
|
+
import numpy as np
|
11
|
+
import matplotlib as mpl
|
12
|
+
import matplotlib.pyplot as plt
|
13
|
+
from datascience import *
|
14
|
+
%matplotlib inline
|
15
|
+
# plt.style.use('seaborn-muted')
|
16
|
+
mpl.rcParams['figure.figsize'] = (10.0, 10.0)
|
17
|
+
```
|
18
|
+
|
19
|
+
# Income Inequality Historically
|
20
|
+
|
21
|
+
<!-- Written by Amal Bhatnagar -->
|
22
|
+
|
23
|
+
In the last chart on the previous page, you may have noticed that income inequality was rising in the United States in the last few decades. We will examine this in more detail, and also observe global trends in inequality.
|
24
|
+
|
25
|
+
## The United States
|
26
|
+
|
27
|
+
Let's look at historical trends of income inequality in the US over the last 100 years. The data has been collected from [The World Inequality Database](https://wid.world/), which is co-directed by Berkeley Economics professors Emanuel Saez and Gabriel Zucman. Specifically, we will observe income distributions for the bottom 50 percent, top 10 percent, and top 1 percent.
|
28
|
+
|
29
|
+
```python
|
30
|
+
us_hist = Table.read_table("US_inequality.csv")
|
31
|
+
us_hist.show(5)
|
32
|
+
```
|
33
|
+
|
34
|
+
```python
|
35
|
+
us_hist.take(np.arange(100,105))
|
36
|
+
```
|
37
|
+
|
38
|
+
Let's begin with some data cleaning: it seems like our 3 brackets are 'vertically stacked' on top of each other. Instead, we would like a table with 5 columns: `Year`, `bottom 50% income share`, `top 10% income share`, and `top 1% income share`.
|
39
|
+
|
40
|
+
```python
|
41
|
+
bottom_50_us = us_hist.where("Percentile", "p0p50").drop("Percentile").relabeled("Income Share", "Bottom 50% Share")
|
42
|
+
top_10_us = us_hist.where("Percentile", "p90p100").drop("Percentile").relabeled("Income Share", "Top 10% Share")
|
43
|
+
top_1_us = us_hist.where("Percentile", "p99p100").drop("Percentile").relabeled("Income Share", "Top 1% Share")
|
44
|
+
us_hist_joined = bottom_50_us.join("Year", top_10_us).join("Year", top_1_us)
|
45
|
+
us_hist_joined
|
46
|
+
```
|
47
|
+
|
48
|
+
Oh no, there are some `nan` values! NaN (not a number) values are very common in real world datasets: often, we may not have some observations simply because no data was collected, or perhaps the data collected was faulty. Sometimes, we can try to impute or replace NaN values in order to avoid having gaps in our data, but for now let's ignore NaNs and when plotting to see what's going on:
|
49
|
+
|
50
|
+
[Following image has line graphs for different income shares over time]
|
51
|
+
|
52
|
+
```python
|
53
|
+
# mpl.rcParams['figure.dpi'] = 120
|
54
|
+
# us_hist_joined.plot("Year", width=11, height=7)
|
55
|
+
plt.plot(us_hist_joined["Year"], us_hist_joined["Bottom 50% Share"], color='blue', label='Bottom 50% Share')
|
56
|
+
plt.plot(us_hist_joined["Year"], us_hist_joined["Top 10% Share"], color='green', label='Top 10% Share')
|
57
|
+
plt.plot(us_hist_joined["Year"], us_hist_joined["Top 1% Share"], color='red', label='Top 1% Share')
|
58
|
+
plt.title("Income Share over Time", fontsize = 16)
|
59
|
+
plt.ylabel("Proportion", fontsize = 14)
|
60
|
+
plt.xlabel("Year", fontsize = 14)
|
61
|
+
plt.legend()
|
62
|
+
plt.show()
|
63
|
+
```
|
64
|
+
|
65
|
+
# Income Inequality for the Rest of the World
|
66
|
+
|
67
|
+
Now let's examine the trends of income inequality in other parts of the world.
|
68
|
+
|
69
|
+
[Following image has line graphs for different income shares over time across countries]
|
70
|
+
|
71
|
+
```python
|
72
|
+
world_hist = Table.read_table("World_Inequality.csv")
|
73
|
+
bottom_50_world = world_hist.where("Percentile", "p0p50").drop("Percentile")
|
74
|
+
top_10_world = world_hist.where("Percentile", "p90p100").drop("Percentile")
|
75
|
+
top_1_world = world_hist.where("Percentile", "p99p100").drop("Percentile")
|
76
|
+
top_10_world
|
77
|
+
```
|
78
|
+
|
79
|
+
```python
|
80
|
+
top_10_world.plot("Year", width=11, height=7)
|
81
|
+
plt.ylabel("Gini Coefficient", fontsize=14)
|
82
|
+
plt.xlabel("Year", fontsize=14)
|
83
|
+
plt.title("Income Inequality over Time", fontsize=18);
|
84
|
+
```
|
85
|
+
|
86
|
+
Just like the US, it seems global inequality has been rising around the world, especially in China, India, Russia, and across Europe. However, in absolute terms, the level of income inequality in Europe is much lower than that in the United States.
|
87
|
+
|
88
|
+
Also look at Russia: income inequality spiked up around 1991. This was likely caused by the fall of the USSR: the failing Soviet state left the ownership of state assets uncontested, which allowed former USSR officials to acquire state property through informal deals. This led to the rise of many Russian oligarchs - those who rapidly accumulated wealth during the era of Russian privatization directly follwing the dissolution of the Soviet Union.
|
89
|
+
|
90
|
+
[Following image has line graphs for different income shares over time in USA & Europe]
|
91
|
+
|
92
|
+
```python
|
93
|
+
top_10_world.select("Year", "USA", "Europe").plot("Year", width=11, height=7)
|
94
|
+
plt.ylabel("Gini Coefficient", fontsize=14)
|
95
|
+
plt.xlabel("Year", fontsize=14)
|
96
|
+
plt.title("Income Inequality over Time", fontsize=18);
|
97
|
+
```
|
98
|
+
|
99
|
+
## The Elephant Graph
|
100
|
+
|
101
|
+
[Following image has a line graph connecting points for the income growth vs income percentile]
|
102
|
+
|
103
|
+
```{figure} elephant_curve.jpg
|
104
|
+
---
|
105
|
+
width: 500px
|
106
|
+
name: elephant-curve
|
107
|
+
---
|
108
|
+
The elephant curve {cite}`10inequality-elephantCurve`
|
109
|
+
```
|
110
|
+
|
111
|
+
The elephant curve is a graph that shows the real income growth per adult across each income group’s percentile around the world.
|
112
|
+
|
113
|
+
There are 3 key features of the elephant curve: a hump for the world’s poorest, valley for the middle class, and trunk for the upper class. The thump is made of the world’s poorest countries, most likely those from developing countries. The valley comprises the working class from the developed world and upper class from developing countries. The trunk is made of people from the upper class from developed countries. The hump and valley indicate growth among emerging countries, and the top global 1%’s growth is higher than any other income group, thus explaining the positively sloped shape of the trunk.
|
114
|
+
|
115
|
+
|
116
|
+
A study done by the Brookings Institution] found that “poorer countries, and the lower income groups within those countries, have grown most rapidly in the past 20 years” {cite}`10inequality-brookings`. This supports the World Bank’s claim that inequality between countries and within countries is decreasing. The Brookings Institution used only household surveys, however, which usually excludes the top and bottom percentile of the population, due to non-response bias. Still, the study is useful in corroborating the trends and growth in global income inequality.
|
117
|
+
|
118
|
+
# Factors that Affect Income Inequality
|
119
|
+
|
120
|
+
Economists have isolated multiple factors that influence a country's income inequality
|
121
|
+
- top marginal tax rates
|
122
|
+
- unemployment rates
|
123
|
+
- population growth
|
124
|
+
|
125
|
+
We will look at each of these scenarios independently and see its overall trends
|
126
|
+
|
127
|
+
## Top marginal tax rates
|
128
|
+
|
129
|
+
Let's also take a look at the top marginal tax rates in the United States throughout this time. Overall, the United States (and most of the rest of the world) has a progressive tax system, which means that the more income you earn, the higher percentage you will be taxed at. A good way to reduce income inequality is through progressive taxation; having the richer paying a higher portion of their income will help increase equality. Currently, the top marginal tax rate is 37%, as we can see in the table below.
|
130
|
+
|
131
|
+
```{figure} MTR.png
|
132
|
+
---
|
133
|
+
width: 500px
|
134
|
+
name: irs
|
135
|
+
---
|
136
|
+
Marginal tax rates. Image from the IRS
|
137
|
+
```
|
138
|
+
|
139
|
+
The top marginal tax rate only applies to the portion of your income above a certain income level. For example, if you earned 19501 dollars in 2019, then you will pay 1940 dollars plus 12% of $19501-19401$, i.e. 12 dollars. For another example, if you earned 80000 dollars, then you will pay $9086 + 0.22(80000-78950) = 9317$ dollars in tax, effectively a $\frac{9317}{80000} = 11.6\%$ tax rate.
|
140
|
+
|
141
|
+
In general, the idea is you will pay a lower tax rate for your first $x$ dollars, but a higher rate for dollars earned over $x$.
|
142
|
+
|
143
|
+
Now let's look at the historical trends in marginal top tax rates, which is the % taxed at the highest tax bracket.
|
144
|
+
|
145
|
+
[Following image has line graphs for the top tax rate over time]
|
146
|
+
|
147
|
+
```python
|
148
|
+
toptax = Table.read_table("toptaxrate.csv")
|
149
|
+
toptax
|
150
|
+
```
|
151
|
+
|
152
|
+
```python
|
153
|
+
# mpl.rcParams['figure.dpi'] = 120
|
154
|
+
toptax.plot(0,1, width=11, height=7)
|
155
|
+
plt.title("Top Marginal Tax Rate over Time", fontsize = 18)
|
156
|
+
plt.show()
|
157
|
+
```
|
158
|
+
|
159
|
+
```python
|
160
|
+
# mpl.rcParams['figure.dpi'] = 120
|
161
|
+
us_hist_joined.plot("Year", width=11, height=7)
|
162
|
+
plt.title("Income Share over Time", fontsize = 18)
|
163
|
+
plt.ylabel("Proportion", fontsize = 14)
|
164
|
+
plt.xlabel("Year", fontsize = 14)
|
165
|
+
plt.show()
|
166
|
+
```
|
167
|
+
|
168
|
+
This graph depicts income inequality decreasing between 1910 and 1970 and increasing from 1970 to present.
|
169
|
+
|
170
|
+
In 1913, Congress implemented the current income tax to promote equality. Originally meant to help compensate for revenue lost from reducing high tariffs, the new policy essentially made the top 1% start contributing to taxes. Additionally, the top marginal tax rate increased from 7% in 1913 to 73% in 1918, thus helping reduce income inequality. Right before the Great Depression, income inequality peaked, where the richest 1% possessed 19.6% of all income. During the Great Depression, top marginal tax rates increased, peaking at 94% in 1944. The top marginal tax rate decreased but remained high over subsequent decades, where it was 70% in 1965 and 50% in 1982. These high top marginal tax rates are correlated with low income inequality. During the Great Depression, the richest 1% had about 15% of total income. For the 10 years after the Great Depression, the top 1% had below 10% of total income and 8% for the 30 years afterwards. This period was known as the Great Compression, as income differentials between the top 1% and the rest of the country decreased.
|
171
|
+
|
172
|
+
In the 1970s, the economy took a turn for the worse with high unemployment and inflation (stagflation) and low growth. In order to stimulate economic growth, the government reduced top marginal tax rates (70% to 38.5% in 1980s), deregulated corporate institutions, and attacked labor union memberships (membership decreased by half within 30 years). Although these policies improved economic growth, it resulted in higher income inequality.
|
173
|
+
|
174
|
+
The graph below better shows that the share of income earned by the bottom 50% percentile steadily decreased, while the share earned by the top 1% increased steadily. This means that the top 1% has more wealth than the entire bottom 50% of the population. Suppose a class of 100 people has \$100 in aggregate. In a world with perfect equality, each person would have \$1. With this current level of income inequality, one person would have more wealth than 50 people combined.
|
175
|
+
|
176
|
+
The media continues to report on the nation's significant income disparity. [The Washington Post wrote a story](https://www.washingtonpost.com/business/2019/09/26/income-inequality-america-highest-its-been-since-census-started-tracking-it-data-show/) and found that “The number of families earning \$15,000 or less has fallen since 2007, according to the latest census data, while the number of households bringing in \$250,000 a year or more has grown more than 15 percent.”
|
177
|
+
|
178
|
+
Can we conclude that high marginal tax rates lead to low income inequality but slow economic growth?
|
179
|
+
|
180
|
+
## Unemployment rates
|
181
|
+
|
182
|
+
Economists believe that unemployment is one of the leading factors that leads to income inequality. When looking at what influences the Gini coefficient, a paper from [Princeton](https://www.researchgate.net/profile/Alicia-Menendez-4/publication/23544180_The_Effect_of_Unemployment_on_Labor_Earnings_Inequality_Argentina_in_the_Nineties/links/09e4150645c0d0e83e000000/The-Effect-of-Unemployment-on-Labor-Earnings-Inequality-Argentina-in-the-Nineties.pdf) found that the unemployment rate had the largest effect on the income inequality rates
|
183
|
+
|
184
|
+
Below, we look at the unemployment rates for the past 20 years across many different countries. These are the same countries and regions that we will further study below.
|
185
|
+
|
186
|
+
```python
|
187
|
+
unemployment = Table.read_table("Unemployment.csv")
|
188
|
+
unemployment
|
189
|
+
```
|
190
|
+
|
191
|
+
As we can see from the graph, the unemployment rates for China, India and the rest of the world have stayed somewhat steady. On the other hand, Brazil, the US, Russia and Europe are encountering drastically different unemployment situations than before.
|
192
|
+
|
193
|
+
[Following image has line graphs for unemployment rates over time across countries]
|
194
|
+
|
195
|
+
```python
|
196
|
+
# mpl.rcParams['figure.dpi'] = 120
|
197
|
+
unemployment.plot("Year", width=11, height=7)
|
198
|
+
plt.ylabel("Unemployment Rate (%)", fontsize = 14)
|
199
|
+
plt.xlabel("Year", fontsize =14)
|
200
|
+
plt.title("Unemployment Rate over Time", fontsize = 18)
|
201
|
+
plt.show()
|
202
|
+
```
|
203
|
+
|
204
|
+
```python
|
205
|
+
top_10_world.plot("Year", width=11, height=7)
|
206
|
+
plt.ylabel("Gini Coefficient", size=14)
|
207
|
+
plt.xlabel("Year", fontsize=14)
|
208
|
+
plt.title("International Income Inequality over Time", fontsize=18)
|
209
|
+
plt.show()
|
210
|
+
```
|
211
|
+
|
212
|
+
The graphs above show a positive correlation between unemployment and income inequality. As unemployment increases, income inequality also increases. In 2011, Hanan Morsy, an Egyptian economist who serves as the Director of Macroeconomic Policy, Forecasting and Research at the African Development Bank, actually researched this topic {cite}`10inequality-morsy`. Her group examined the member nations of the Organization for Economic Cooperation and Development (OECD) between 1980 and 2005. She found that specific groups that were vulnerable to the economic shocks that led to an increase in income inequality:
|
213
|
+
- young workers
|
214
|
+
- low-skilled workers
|
215
|
+
- workers who had been out of work for a long time
|
216
|
+
|
217
|
+
Her solution was to increase job creation opportunities for temporary, recently fired, and recently hired workers, provide job assistance and training to prevent long-term unemployment, and improve incentives for working by aligning incentives with productivity of labor. Morsy's research found that the most vulnerable groups to economic shocks were young, low-skilled and temporary workers. Creating opportunities for these different demographics would help them be more protected from potential shocks and thus decrease income inequality.
|
218
|
+
|
219
|
+
## Population growth
|
220
|
+
|
221
|
+
As the number of people in a country's population increase, it becomes more difficult for a country to distribute its public goods to everyone. This leads to many social consequences in which resources are not fairly distributed to all members of the population, cause inaccessibility for different parts of the population
|
222
|
+
|
223
|
+
The table below shows how the population growth has changed for the same countries we saw above. We are only looking at data for the past 10 years.
|
224
|
+
|
225
|
+
[Following image has line graphs for population growth rates over time]
|
226
|
+
|
227
|
+
```python
|
228
|
+
pop_growth = Table.read_table("Population Growth.csv")
|
229
|
+
pop_growth
|
230
|
+
```
|
231
|
+
|
232
|
+
```python
|
233
|
+
pop_growth.plot("Year", width=11, height=7)
|
234
|
+
plt.title("Population Growth over Time", fontsize = 18)
|
235
|
+
plt.ylabel("Population Growth (%)", fontsize = 14)
|
236
|
+
plt.xlabel("Year", fontsize = 14)
|
237
|
+
plt.show()
|
238
|
+
```
|
239
|
+
|
240
|
+
```python
|
241
|
+
top_10_world.plot("Year", width=11, height=7)
|
242
|
+
plt.ylabel("Gini Coefficient", fontsize=14)
|
243
|
+
plt.xlabel("Year", fontsize=14)
|
244
|
+
plt.title("International Income Inequality over Time", fontsize=18)
|
245
|
+
plt.show()
|
246
|
+
```
|
247
|
+
|
248
|
+
The graphs above show that most countries high population growth between 1-2% during the 1980's. The effects of this can be seen in the rising income inequality during the 90's.
|
249
|
+
|
250
|
+
Recent research by University of Toronto's Marijn Bolhuis and Univeristy of Oxford's Alexandra de Pleijt shows that there is a strong correlation between a country's population growth (measured by birth rates) and its income inequality {cite}`10inequality-popGrowth`. Their most recent study in 2016 analyzed income inequality and birth rates data between 1870 and 2000 across 67 countries. They concluded that if a country had 50% higher income inequality, then that country's birth rate would be about twice as high as another country with the same level of economic development. Bolhuis says that these higher birth rates mean that economic growth has to be equal to or greater than the birth rate to offset the implications of higher birth rates.
|
251
|
+
|
252
|
+
This is part of a larger debate about the relationship between birth rates and income inequality. Economist Thomas Piketty finds that low birth rates, rather than high birth rates, are causing today's income inequality. With lower birth rates, fewer children per couple are being borne, so these children get more of their parents' inheritance.
|
253
|
+
|
@@ -0,0 +1,15 @@
|
|
1
|
+
---
|
2
|
+
title: index
|
3
|
+
type: textbook
|
4
|
+
source_path: content/06-inequality/index.md
|
5
|
+
chapter: 6
|
6
|
+
---
|
7
|
+
|
8
|
+
# Inequality
|
9
|
+
|
10
|
+
Income inequality is a relevant issue that often comes up in the news. In this chapter, we'll go over measurements of inequality, trends in income inequality in the US, and compare income inequality measures across countries.
|
11
|
+
|
12
|
+
**Student Learning Outcomes:**
|
13
|
+
|
14
|
+
* Understand the Lorenz curve to depict income distributions within a country
|
15
|
+
* Calculate the Gini coefficient as a measure of inequality
|
@@ -0,0 +1,226 @@
|
|
1
|
+
---
|
2
|
+
title: inequality
|
3
|
+
type: textbook
|
4
|
+
source_path: content/06-inequality/inequality.ipynb
|
5
|
+
chapter: 6
|
6
|
+
---
|
7
|
+
|
8
|
+
```python
|
9
|
+
import pandas as pd
|
10
|
+
import numpy as np
|
11
|
+
import matplotlib.pyplot as plt
|
12
|
+
from datascience import *
|
13
|
+
%matplotlib inline
|
14
|
+
plt.style.use('seaborn-v0_8-muted')
|
15
|
+
```
|
16
|
+
|
17
|
+
# Measurements of Inequality
|
18
|
+
|
19
|
+
## The Lorenz Curve
|
20
|
+
The Lorenz Curve visually presents income inequality by plotting household income percentile on the $x$-axis, and the cumulative income share that the bottom $x$ percentile own on the $y$-axis. The households are sorted by income, so that the first household at the 0th percentile has the least amount of income, while the household at the 100th percentile has the greatest income.
|
21
|
+
|
22
|
+
For any point $(x,y)$ on the Lorenz curve, “the bottom x percent own y% of the income”. For example, if the $x$-axis reads 0.30 and $y$-axis reads 0.10, then it means that the bottom 30% of the population received 10% of the total population's income. This yields 2 implications for the Lorenz Curve:
|
23
|
+
- The points $(0,0)$ and $(1,1)$ are always on the curve. $(0,0)$ represents the 0% of the population owning 0% of the income and $(1,1)$ represents 100% of the population owning 100% of the income.
|
24
|
+
- The slope is always increasing. This is because households are sorted by income as percentiles: for a slight increase in $x$, households become richer and hence provide a larger share of total income.
|
25
|
+
|
26
|
+
### Line of Perfect Equality
|
27
|
+
In a world of perfect equality, everyone would have the exact same income. In this case, the Lorenz curve would just be a 45-degree straight line that runs through $(0,0)$ and $(1,1)$, i.e. $y=x$. Mathematically, this is because the derivative is constant: for a slight increase in $x$, the total share of income increases at a constant rate. Another way to think about this is that the bottom 10% of the population will own 10% of the total income, the bottom 50% of the population will own 50% of the total income, and so on. This line is known as the *line of perfect equality*, and we typically display this line when plotting our Lorenz curves as a reference.
|
28
|
+
|
29
|
+
### A Toy Example
|
30
|
+
Let's suppose country 1 has the following income distribution:
|
31
|
+
- The bottom 10% owns a cumulative 2% of total income
|
32
|
+
- The bottom 20% owns 5% of total income
|
33
|
+
- The bottom 30% owns 9% of total income
|
34
|
+
- The bottom 40% owns 15% of total income
|
35
|
+
- The bottom 50% owns 23% of total income
|
36
|
+
- The bottom 60% owns 33% of total income
|
37
|
+
- The bottom 70% with 45% of total income
|
38
|
+
- The bottom 80% with 59% of total income
|
39
|
+
- The bottom 90% with 75% of total income
|
40
|
+
- The bottom 100% with 100% of total income
|
41
|
+
|
42
|
+
We will create an array of income shares and call it `Country1`.
|
43
|
+
|
44
|
+
```python
|
45
|
+
Country1 = make_array(0, 0.02, 0.05, 0.09, 0.15, 0.23, 0.33, 0.45, 0.59, 0.75, 1.0)
|
46
|
+
```
|
47
|
+
|
48
|
+
To better see this information, we will create a table containing population percentage and cumulative income share.
|
49
|
+
|
50
|
+
```python
|
51
|
+
income_distribution = Table().with_columns(
|
52
|
+
"Population Percentage (%)", np.arange(11) * 10,
|
53
|
+
"Cumulative Income Share (%)", Country1 * 100,
|
54
|
+
"Perfect Equality Income Share (%)", np.arange(11) * 10
|
55
|
+
)
|
56
|
+
income_distribution
|
57
|
+
```
|
58
|
+
|
59
|
+
How will the Lorenz Curve for this income distribution look?
|
60
|
+
|
61
|
+
[Following image is an line graph and a scatter plot of population share vs income share]
|
62
|
+
|
63
|
+
```python
|
64
|
+
income_distribution.scatter(0, 1, width=11, height=7)
|
65
|
+
plt.plot([0,100], [0,100], color='k');
|
66
|
+
```
|
67
|
+
|
68
|
+
### Comparing Lorenz Curves
|
69
|
+
Now let's compare 2 countries' Lorenz curves. Suppose country 2 has the following income distribution:
|
70
|
+
- The bottom 10% owns a cumulative 3% of total income
|
71
|
+
- The bottom 20% owns 7% of total income
|
72
|
+
- The bottom 30% owns 13% of total income
|
73
|
+
- The bottom 40% owns 19% of total income
|
74
|
+
- The bottom 50% owns 27% of total income
|
75
|
+
- The bottom 60% owns 37% of total income
|
76
|
+
- The bottom 70% with 50% of total income
|
77
|
+
- The bottom 80% with 65% of total income
|
78
|
+
- The bottom 90% with 81% of total income
|
79
|
+
- The bottom 100% with 100% of total income
|
80
|
+
|
81
|
+
```python
|
82
|
+
Country2 = make_array(0, 0.03, 0.07, 0.13, 0.19, 0.27, 0.37, 0.5, 0.65, 0.81, 1.0)
|
83
|
+
income_distribution2 = Table().with_columns(
|
84
|
+
"Population Percentage (%)", np.arange(11) * 10,
|
85
|
+
"Cumulative Income Share (%)", Country2 * 100,
|
86
|
+
"Perfect Equality Income Share (%)", np.arange(11) * 10
|
87
|
+
)
|
88
|
+
income_distribution2
|
89
|
+
```
|
90
|
+
|
91
|
+
Comparing the 2 countries' income distributions side by side:
|
92
|
+
|
93
|
+
```python
|
94
|
+
income_distribution.join(
|
95
|
+
["Population Percentage (%)", "Perfect Equality Income Share (%)"],
|
96
|
+
income_distribution2, ["Population Percentage (%)", "Perfect Equality Income Share (%)"]
|
97
|
+
).relabel(
|
98
|
+
"Cumulative Income Share (%)", "Country 1 Cumulative Income Share (%)"
|
99
|
+
).relabel(
|
100
|
+
"Cumulative Income Share (%)_2", "Country 2 Cumulative Income Share (%)"
|
101
|
+
)
|
102
|
+
```
|
103
|
+
|
104
|
+
Plotting both countries' Lorenz curves, can you tell which country has a higher level of income inequality?
|
105
|
+
|
106
|
+
[Following image has 2 Lorenz Curves for different countries in population share vs income share]
|
107
|
+
|
108
|
+
```python
|
109
|
+
plt.figure(figsize=[7,7])
|
110
|
+
plt.plot(income_distribution.column(0), income_distribution.column(1), "-o", c = 'b')
|
111
|
+
plt.plot(income_distribution.column(0), income_distribution2.column(1), "-o", c = 'r')
|
112
|
+
plt.legend(["Country 1", "Country 2"])
|
113
|
+
plt.plot([0,100], [0,100], color='k');
|
114
|
+
```
|
115
|
+
|
116
|
+
In this case, we can see that country 2's Lorenz curve is closer to the line of equality than that of country 1, which intuitively would suggest that country 2 is more equal. If we were to look at the numbers, we see that the bottom percentiles own a higher % of total national income in country 2 than in country 1, while top percentiles own less in country 2 than in country 1. This would suggest that country 2 is more equal in income than country 1, so that country 1 has a higher level of income inequality.
|
117
|
+
|
118
|
+
But now let's consider a different case; suppose country 3 has the following distribution:
|
119
|
+
|
120
|
+
[Following image has 2 Lorenz Curves for different countries in population share vs income share]
|
121
|
+
|
122
|
+
```python
|
123
|
+
Country3 = make_array(0, 0.03, 0.07, 0.12, 0.18, 0.25, 0.33, 0.42, 0.54, 0.73, 1.0)
|
124
|
+
income_distribution3 = Table().with_columns(
|
125
|
+
"Population Percentage (%)", np.arange(11) * 10,
|
126
|
+
"Cumulative Income Share (%)", Country3 * 100,
|
127
|
+
"Perfect Equality Income Share (%)", np.arange(11) * 10
|
128
|
+
)
|
129
|
+
income_distribution.join(
|
130
|
+
["Population Percentage (%)", "Perfect Equality Income Share (%)"],
|
131
|
+
income_distribution3, ["Population Percentage (%)", "Perfect Equality Income Share (%)"]
|
132
|
+
).relabel(
|
133
|
+
"Cumulative Income Share (%)", "Country 1 Cumulative Income Share (%)"
|
134
|
+
).relabel(
|
135
|
+
"Cumulative Income Share (%)_2", "Country 3 Cumulative Income Share (%)"
|
136
|
+
)
|
137
|
+
```
|
138
|
+
|
139
|
+
```python
|
140
|
+
plt.figure(figsize=[7,7])
|
141
|
+
plt.plot(income_distribution.column(0), income_distribution.column(1), "-o", c = 'b')
|
142
|
+
plt.plot(income_distribution.column(0), income_distribution3.column(1), "-o", c = 'r')
|
143
|
+
plt.legend(["Country 1", "Country 3"])
|
144
|
+
plt.plot([0,100], [0,100], color='k');
|
145
|
+
```
|
146
|
+
|
147
|
+
Now, ambiguity arises; while bottom income percentiles earn a larger share of national income in country 3, top income percentiles also have a larger share. We can visualize this phenomenon by the 'crossing' of Lorenz curves on the plot. As a result, we do cannot easily tell which country has a higher level of income inequality.
|
148
|
+
|
149
|
+
As you may see, the Lorenz curve is not able to produce a 'quantitative' measure of income inequality, making the scenario above hard for us to compare the 2 countries. For this, we turn to the Gini coefficient.
|
150
|
+
|
151
|
+
## The Gini Coefficient
|
152
|
+
|
153
|
+
We can use the Gini coefficeint to quantify the level of income inequality.
|
154
|
+
|
155
|
+
[Following image has two parts shaded within a 45 degree triangle, part A above Lorenz Curve and Part B below]
|
156
|
+
|
157
|
+
```{figure} Gini.png
|
158
|
+
---
|
159
|
+
width: 500px
|
160
|
+
name: gini-coefficient
|
161
|
+
---
|
162
|
+
The Gini coefficient
|
163
|
+
```
|
164
|
+
|
165
|
+

|
166
|
+
|
167
|
+
```{admonition} Definition
|
168
|
+
|
169
|
+
The **Gini coefficient** is the ratio of the area between the line of equality and the Lorenz curve to the total area under the line of equality. Referring to $A$ and $B$ from {numref}`gini-coefficient`:
|
170
|
+
|
171
|
+
$$\text{Gini} = \frac{\text{Area between line of equality and Lorenz curve}}{\text{Area under line of equality}} = \frac{A}{A+B}$$
|
172
|
+
|
173
|
+
If we express the Lorenz curve as $L(x)$, we can use calculus to derive an equation for the Gini coefficient:
|
174
|
+
|
175
|
+
$$\text{Gini} = \frac{\frac{1}{2} - \int_0^1 L(x)\text{d}x}{\frac{1}{2}} = 1 - 2\int_0^1 L(x)\text{d}x$$
|
176
|
+
```
|
177
|
+
|
178
|
+
Intuitively, the closer the Lorenz curve is to the line of equality, the lower income inequality exists. Hence, the smaller the area of A, the lower the inequality. **This means that the smaller the Gini coefficient, the lower the income inequality.** Also note that the Gini coefficient will always be between 0 and 1. Mathematically, since $A$ and $B$ are both positive, $0<\frac{A}{A+B}<1$.
|
179
|
+
|
180
|
+
```python
|
181
|
+
# This function estimates the Gini coefficient. You don't have to understand how this code works below.
|
182
|
+
def gini(distribution):
|
183
|
+
sorted_distribution = sorted(distribution)
|
184
|
+
height = 0
|
185
|
+
area = 0
|
186
|
+
for i in sorted_distribution:
|
187
|
+
height += i
|
188
|
+
area += height - i / 2
|
189
|
+
fair_area = height * len(distribution) / 2.
|
190
|
+
return (fair_area - area) / fair_area
|
191
|
+
```
|
192
|
+
|
193
|
+
When we use our population as the parameter to the `gini` function, we get:
|
194
|
+
|
195
|
+
```python
|
196
|
+
gini_coefficient_country1 = gini(Country1)
|
197
|
+
gini_coefficient_country1
|
198
|
+
```
|
199
|
+
|
200
|
+
```python
|
201
|
+
gini_coefficient_country2 = gini(Country2)
|
202
|
+
gini_coefficient_country2
|
203
|
+
```
|
204
|
+
|
205
|
+
```python
|
206
|
+
gini_coefficient_country3 = gini(Country3)
|
207
|
+
gini_coefficient_country3
|
208
|
+
```
|
209
|
+
|
210
|
+
These results confirm our intuition from the analysis we did previously via Lorenz curves. Previously, we concluded that country 1 had a higher level of income inequality than country 2, and this is supported by country 1's higher gini coefficient. On the other hand, we had trouble comparing levels of inequality between country 1 and country 3. Here, the gini coefficient would indicate that country 1 has a higher level of income inequality than country 3.
|
211
|
+
|
212
|
+
## Other Forms of Measurement
|
213
|
+
|
214
|
+
The Gini coefficient is a fairly comprehensive and robust measure of inequality with just a single value: as we've seen above, we look at the entire population's income distribution to determine the Gini coefficient. As a result, calculating the Gini is often a challenging task. In reality, we will never observe the true population Lorenz curve without conducting a census to know how much exactly each household earns. As a result, economists will often attempt to interpolate the Lorenz curve and consequent Gini coefficient from the data they have available. The Gini coefficient is also not as easy to understand or explain; the value by itself does not have significant meaning.
|
215
|
+
|
216
|
+
Instead, another common measure of income inequality is the share of income earned by the "top $x$%" or the "bottom $y$%". These measures are more often used in the media or by politicians in discussing the extent of inequality, since they are much easier to understand. Consider the chart below, which plots the share of income earned by the top 1%, bottom 90%, and the 90-99%:
|
217
|
+
|
218
|
+
[Following image has line graphs for shares of wealth by wealth percentiles]
|
219
|
+
|
220
|
+
```{figure} alt_measure.png
|
221
|
+
---
|
222
|
+
---
|
223
|
+
Alternative forms of measurement
|
224
|
+
```
|
225
|
+
|
226
|
+

|