---
# System prepended metadata

title: 'W13: 5/09'

---

W13: 5/09
===

### 吉尼係數做法

```
dfLorenz=dfIncome[:]
se=dfLorenz[‘Income’].sort_values()

#家戶收入
incomes=[0]

#戶數累積百分比
cumulativePercentage=[0]

#所得累積百分比
cumulativeSum=[0]

#戶數
n=se.count()

#全體總收入
sum=se.sum()

#暫存變數
cum=0
pr=0;

for _income in se:
incomes.append(_income)
pr+=1
cum+=_income
cumulativePercentage.append(pr/n)
cumulativeSum.append(cum/sum)

#計算曲線下的面積
#用integral代表面積
integral=0

for i in range(1,n+1):
#計算圖中10個梯型的面積
#梯型面積計算公式：(上底+下底)高2
#程式碼為 (cumulativeSum[i-1]+cumulativeSum[i])(1/n)/2
#說明：
#(cumulativeSum[i-1]+cumulativeSum[i])>(上底+下底)
#(1/n)>高
integral+= (cumulativeSum[i-1]+cumulativeSum[i])(1/n)/2
#畫出10個梯型給同學參考
#plt.plot([cumulativePercentage[i],cumulativePercentage[i]],[0,cumulativeSum[i]])

#第一種算法的吉尼係數
gini=(0.5-integral)/0.5
print(f’第一種算法的吉尼係數={gini:.8f}')

#繪製全部人收入都一樣的情況
plt.plot([0,1],[0,1])

#繪製散佈圖
plt.plot(cumulativePercentage,cumulativeSum)
#plt.scatter(x=cumulativePercentage,y=cumulativeSum,s=0.1)

plt.xlabel(u’戶數累積百分比’) #x座標說明
plt.ylabel(u’所得累積百分比’) #y座標說明

plt.axis(‘square’)
plt.xlim(0,1)
plt.ylim(0,1)
print(‘羅倫茲曲線（Lorenz curve）’)
plt.show()
```

---

### 作業
1. 球員收入、Gini（[Excel](https://docs.google.com/spreadsheets/d/1-cX6hw91d8p5SsvVE8BFo_pCqkUsdjiaxPhIZwoTy0Y/edit#gid=0)，[Colab](https://colab.research.google.com/drive/1eMl1yx_CE4B4T7ecMBTkgB6f2E9lqnsq)）
2. [期末專題](https://colab.research.google.com/drive/1ZY8k0L0_K_7JH6UPy0ntfMRT6H2bwlnW#scrollTo=9S7YmdMfc-Yk)