Skip to content

Commit b95218f

Browse files
committed
updates
1 parent bf93f4c commit b95218f

File tree

1 file changed

+28
-32
lines changed

1 file changed

+28
-32
lines changed

lectures/wealth_dynamics.md

Lines changed: 28 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ kernelspec:
2424
```
2525

2626
```{seealso}
27-
使用`GPU`[版本]的本讲座(https://jax.quantecon.org/wealth_dynamics.html)可在[这里]找到(https://jax.quantecon.org/wealth_dynamics.html)
27+
本讲座的`GPU`版本可在[这里](https://jax.quantecon.org/wealth_dynamics.html)找到
2828
```
2929

3030
除了Anaconda中已有的库外,本讲座还需要以下库:
@@ -38,34 +38,32 @@ tags: [hide-output]
3838

3939
## 概述
4040

41-
本课程介绍了财富分配动态,重点要
41+
本课程介绍了财富分配动态,在本讲中,我们
4242

4343
* 通过模拟建模和计算财富分配,
4444
* 介绍不平等的衡量指标,如洛伦兹曲线和基尼系数
45-
* 工资收入和资产回报的特性如何影响不平等
45+
* 以及探究工资收入和资产回报的特性如何影响不平等
4646

47-
我们这里讨论的财富分配,有一个有趣的特性是帕累托尾部
47+
我们这里讨论的财富分配,有一个有趣的特性是帕累托尾
4848

49-
许多国家的财富分配都表现出帕累托尾部
49+
许多国家的财富分配都表现出帕累托尾
5050

51-
* 参见{doc}`本讲座<intro:heavy_tails>`获取定义
51+
* 参见{doc}`本讲座<intro:heavy_tails>`中的定义
5252
* 关于相关实证证据的综述,请参见{cite}`benhabib2018skewed`
5353

54-
这与现实中,财富高度集中在最富有的一部分家庭的情况相一致
54+
这与现实中,财富高度集中在最富有的一部分家庭的情况一致
5555

5656
这一特性也为我们提供了一种量化这种集中度的方法:通过尾部指数。
5757

5858
一个值得关注的问题是,我们是否能从一个相对简单的模型中复现出帕累托尾部。
5959

6060
### 关于假设的说明
6161

62-
任何给定家庭的财富变动取决于其
63-
64-
储蓄行为。
62+
任何给定家庭的财富变动取决于其储蓄行为。
6563

6664
对这种储蓄行为的建模将成为本系列讲座的要点。
6765

68-
然而,在本次讲座中,我们假设相对随意(但合理)的储蓄规则就足够。
66+
然而,在本次讲座中,我们假设相对简单(但合理)的储蓄规则就足够。
6967

7068
我们这样做是为了探索不同收入动态和投资回报规格的影响。
7169

@@ -80,7 +78,7 @@ FONTPATH = "fonts/SourceHanSerifSC-SemiBold.otf"
8078
mpl.font_manager.fontManager.addfont(FONTPATH)
8179
plt.rcParams['font.family'] = ['Source Han Serif SC']
8280
83-
plt.rcParams["figure.figsize"] = (11, 5) #set default figure size
81+
plt.rcParams["figure.figsize"] = (11, 5) # 设置默认图形大小
8482
import numpy as np
8583
import quantecon as qe
8684
from numba import jit, float64, prange
@@ -97,15 +95,13 @@ from numba.experimental import jitclass
9795

9896
上面已经导入的[QuantEcon.py](https://github.com/QuantEcon/QuantEcon.py)包含了计算洛伦兹曲线的函数。
9997

100-
举例说明,假设:
98+
举例说明,假设以下数据代表了10,000个家庭的财富分布
10199

102100
```{code-cell} ipython3
103101
n = 10_000 # 样本大小
104102
w = np.exp(np.random.randn(n)) # 生成对数正态分布的随机样本
105103
```
106104

107-
数据代表了10,000个家庭的财富分布。
108-
109105
我们可以按如下方式计算并绘制洛伦兹曲线:
110106

111107
```{code-cell} ipython3
@@ -118,7 +114,7 @@ ax.legend()
118114
plt.show()
119115
```
120116

121-
这条曲线可以这样理解:如果点$(x,y)$位于曲线上,这意味着最底层$(100x)\%$的人口collectively拥有$(100y)\%$的财富。
117+
这条曲线可以这样理解:如果点$(x,y)$位于曲线上,这意味着最底层$(100x)\%$的人口拥有$(100y)\%$的财富。
122118

123119
"平等"线是45度线(在图中可能不完全是45度,这取决于图形的纵横比)。
124120

@@ -152,7 +148,7 @@ plt.show()
152148

153149
### 基尼系数
154150

155-
基尼系数的定义和解释可以在相应的[维基百科页面](https://en.wikipedia.org/wiki/Gini_coefficient)上找到。
151+
基尼系数的定义和解释可以在相应的[百科页面](https://baike.baidu.com/item/%E5%9F%BA%E5%B0%BC%E7%B3%BB%E6%95%B0/88365)上找到。
156152

157153
0值表示完全平等(对应洛伦兹曲线与45度线重合的情况),1值表示完全不平等(所有财富都由最富有的家庭持有)。
158154

@@ -228,7 +224,7 @@ $$
228224

229225
$c_r$ 的值应该接近于零,因为资产收益率不会表现出较大的趋势。
230226

231-
当我们模拟家庭人口时,我们假设所有冲击都是特殊性的(即,特定于个别家庭且彼此之间相互独立)。
227+
当我们模拟家庭人口时,我们假设所有冲击都是特质的(即,特定于个别家庭且彼此之间相互独立)。
232228

233229
关于储蓄函数$s$,我们的默认模型将是
234230

@@ -269,7 +265,7 @@ wealth_dynamics_data = [
269265
]
270266
```
271267

272-
这是一个存储实例数据并实现更新总体状态和家庭财富方法的类
268+
下面是一个类,用于存储模型参数并实现更新总体状态和家庭财富的方法
273269

274270
```{code-cell} ipython3
275271
@@ -335,7 +331,7 @@ class WealthDynamics:
335331
return wp, zp
336332
```
337333

338-
这是一个用于模拟单个家庭财富时间序列的函数
334+
以下是一个用于模拟单个家庭财富时间序列的函数
339335

340336
```{code-cell} ipython3
341337
@@ -360,9 +356,9 @@ def wealth_time_series(wdy, w_0, n):
360356
return w
361357
```
362358

363-
以下是模拟一组家庭财富随时间变化的函数
359+
下面是模拟一组家庭财富随时间变化的函数
364360

365-
注意使用并行化来加快计算速度
361+
我们使用并行计算来加快计算速度
366362

367363
```{code-cell} ipython3
368364
@@ -374,7 +370,7 @@ def update_cross_section(wdy, w_distribution, shift_length=500):
374370
* wdy: WealthDynamics的一个实例
375371
* w_distribution: array_like, 表示当前的截面分布
376372
377-
接收当前家庭财富值分布作为w_distribution输入
373+
接收当前家庭财富值分布作为w_distribution的输入
378374
并将每个w_t更新为w_{t+j},其中
379375
j = shift_length。(步长)
380376
@@ -428,7 +424,7 @@ plt.show()
428424
```{code-cell} ipython3
429425
def generate_lorenz_and_gini(wdy, num_households=100_000, T=500):
430426
"""
431-
通过将num_households向前模拟到时间T,生成与WealthDynamics模型
427+
通过将num_households个家庭向前模拟到时间T,生成与WealthDynamics模型
432428
相对应的洛伦兹曲线数据和基尼系数。
433429
"""
434430
ψ_0 = np.full(num_households, wdy.y_mean)
@@ -472,7 +468,7 @@ plt.show()
472468

473469
由于代码经过高效的JIT编译并完全并行化,如果不更改硬件,几乎不可能让这些任务序列运行得更快。
474470

475-
现在让我们检查基尼系数
471+
现在让我们看一看基尼系数
476472

477473
```{code-cell} ipython3
478474
fig, ax = plt.subplots()
@@ -484,7 +480,7 @@ plt.show()
484480

485481
我们再次看到,随着金融收入回报的增加,不平等程度也在上升。
486482

487-
让我们通过研究改变金融回报的波动率项$\sigma_r$时会发生什么,来结束本节课程
483+
最后,让我们通过研究改变金融回报的波动率项$\sigma_r$时会发生什么。
488484

489485
```{code-cell} ipython3
490486
%%time
@@ -499,7 +495,7 @@ for σ_r in σ_r_vals:
499495
ax.plot(f_vals, l_vals, label=fr'$\psi^*$ at $\sigma_r = {σ_r:0.2}$')
500496
gini_vals.append(gv)
501497
502-
ax.plot(f_vals, f_vals, label='equality')
498+
ax.plot(f_vals, f_vals, label='不平等')
503499
ax.legend(loc="upper left")
504500
plt.show()
505501
```
@@ -530,7 +526,7 @@ plt.show()
530526
:class: dropdown
531527
```
532528

533-
这是一个解决方案,它在理论和模拟之间产生了很好的匹配。
529+
这是一个解法,它在理论和模拟之间产生了很好的匹配。
534530

535531
```{code-cell} ipython3
536532
a_vals = np.linspace(1, 10, 25) # 帕累托尾部指数
@@ -541,8 +537,8 @@ fig, ax = plt.subplots()
541537
for i, a in enumerate(a_vals):
542538
y = np.random.uniform(size=n)**(-1/a)
543539
ginis[i] = qe.gini_coefficient(y)
544-
ax.plot(a_vals, ginis, label='sampled')
545-
ax.plot(a_vals, 1/(2*a_vals - 1), label='theoretical')
540+
ax.plot(a_vals, ginis, label='抽样值')
541+
ax.plot(a_vals, 1/(2*a_vals - 1), label='理论值')
546542
ax.legend()
547543
plt.show()
548544
```
@@ -606,14 +602,14 @@ z_0 = wdy.z_mean
606602
ψ_star = update_cross_section(wdy, ψ_0, shift_length=T)
607603
```
608604

609-
现在让我们看看等级-规模图:
605+
现在让我们看看排名-规模图:
610606

611607
```{code-cell} ipython3
612608
fig, ax = plt.subplots()
613609
614610
rank_data, size_data = qe.rank_size(ψ_star, c=0.001)
615611
ax.loglog(rank_data, size_data, 'o', markersize=3.0, alpha=0.5)
616-
ax.set_xlabel("对数等级")
612+
ax.set_xlabel("对数排名")
617613
ax.set_ylabel("对数规模")
618614
619615
plt.show()

0 commit comments

Comments
 (0)