In [1]:
import pandas as pd
import numpy as np
分析¶
In [2]:
data0411=pd.read_excel('各地区企业避税天堂指数排名.xlsx')
data0411[['企业避税天堂指数','全球规模比重',
'避税评分','CTHI占比','地区排名']]==data0411[['企业避税天堂指数','全球规模比重',
'避税评分','CTHI占比','地区排名']].astype('float64')
# 02输出5-10条数据
print(data0411.iloc[4:10])
年度 地区排名 地区名称 地区国际代码 CTHI占比 避税评分 全球规模比重 企业避税天堂指数 4 2021 5 瑞士 CHE 5.11 88.5 3.44 2261 5 2021 6 卢森堡 LUX 4.10 73.9 9.01 1814 6 2021 7 中国香港 HKG 4.08 77.9 5.55 1805 7 2021 8 泽西岛 JEY 3.89 100.0 0.51 1724 8 2021 9 新加坡 SGP 3.87 84.6 2.26 1714 9 2021 10 阿拉伯联合酋长国 ARE 3.76 98.3 0.54 1664
In [3]:
# 03读取第20行整行数据
print(data0411.iloc[19])
年度 2021 地区排名 20 地区名称 马恩岛 地区国际代码 IMN CTHI占比 1.92 避税评分 100.0 全球规模比重 0.06 企业避税天堂指数 850 Name: 19, dtype: object
In [4]:
# 04查看下标为[30,40,50]行的数据
print(data0411.iloc[[30,40,50]])
年度 地区排名 地区名称 地区国际代码 CTHI占比 避税评分 全球规模比重 企业避税天堂指数 30 2021 31 墨西哥 MEX 0.73 54.1 0.85 324 40 2021 41 罗马尼亚 ROU 0.56 61.9 0.11 248 50 2021 51 斯洛伐克 SVK 0.35 55.1 0.08 154
In [5]:
# 05查看“年度”、“地区排名”“地区名称”的前5列数据
print(data0411[['年度','地区排名','地区名称']].head(5))
年度 地区排名 地区名称 0 2021 1 英属维尔京群岛 1 2021 2 开曼群岛 2 2021 3 百慕达 3 2021 4 荷兰 4 2021 5 瑞士
In [6]:
# 06查看前10行中“地区排名”、“地区名称”的数据
print(data0411[['地区排名','地区名称']].head(10))
地区排名 地区名称 0 1 英属维尔京群岛 1 2 开曼群岛 2 3 百慕达 3 4 荷兰 4 5 瑞士 5 6 卢森堡 6 7 中国香港 7 8 泽西岛 8 9 新加坡 9 10 阿拉伯联合酋长国
In [7]:
# 07输出2021年避税评分高于90的数据
print(data0411[(data0411['年度']==2021)&(data0411['避税评分']>90)])
年度 地区排名 地区名称 地区国际代码 CTHI占比 避税评分 全球规模比重 企业避税天堂指数 0 2021 1 英属维尔京群岛 VGB 6.45 100.0 2.32 2853 1 2021 2 开曼群岛 CYM 5.99 100.0 1.87 2653 2 2021 3 百慕达 BMU 5.67 100.0 1.58 2508 7 2021 8 泽西岛 JEY 3.89 100.0 0.51 1724 9 2021 10 阿拉伯联合酋长国 ARE 3.76 98.3 0.54 1664 11 2021 12 巴哈马 BHS 3.28 100.0 0.31 1454 16 2021 17 根西岛 GGY 2.16 98.3 0.10 954 19 2021 20 马恩岛 IMN 1.92 100.0 0.06 850 35 2021 36 特克斯和凯科斯群岛 TCA 0.66 100.0 0.00 290 38 2021 39 安圭拉 AIA 0.58 100.0 0.00 255
In [8]:
# 08输出“中国香港”历年的避税评分
print(data0411[data0411['地区名称']=='中国香港'])
年度 地区排名 地区名称 地区国际代码 CTHI占比 避税评分 全球规模比重 企业避税天堂指数 6 2021 7 中国香港 HKG 4.08 77.9 5.55 1805 75 2024 6 中国香港 HKG 4.50 78.0 7.10 1948
In [9]:
# 输出“中国香港”历年的避税评分_指定列
print(data0411[data0411['地区名称']=='中国香港'][['年度','地区排名','地区名称']])
年度 地区排名 地区名称 6 2021 7 中国香港 75 2024 6 中国香港
In [10]:
# 09输出2023年“企业避税指数”大于2000的地区名称 没有2023年
print(data0411[(data0411['年度']==2021)&(data0411['企业避税天堂指数']>2000)]['地区名称'])
0 英属维尔京群岛 1 开曼群岛 2 百慕达 3 荷兰 4 瑞士 Name: 地区名称, dtype: object
In [11]:
# 10查看2022年“企业避税指数”的统计信息
print(data0411[data0411['年度']==2021]['企业避税天堂指数'].describe())
count 70.000000 mean 632.257143 std 736.188061 min 3.000000 25% 134.250000 50% 290.500000 75% 905.000000 max 2853.000000 Name: 企业避税天堂指数, dtype: float64
In [12]:
# 11查看2021年全球规模比重的10分位数信息
print(data0411[data0411['年度']==2021]['全球规模比重'].quantile(0.1))
0.009000000000000005
In [13]:
# 12查看2021年“企业避税天堂指数”最大的5条命令
print(data0411[data0411['年度']==2021].nlargest(5,'企业避税天堂指数'))
年度 地区排名 地区名称 地区国际代码 CTHI占比 避税评分 全球规模比重 企业避税天堂指数 0 2021 1 英属维尔京群岛 VGB 6.45 100.0 2.32 2853 1 2021 2 开曼群岛 CYM 5.99 100.0 1.87 2653 2 2021 3 百慕达 BMU 5.67 100.0 1.58 2508 3 2021 4 荷兰 NLD 5.54 79.9 11.09 2454 4 2021 5 瑞士 CHE 5.11 88.5 3.44 2261
In [14]:
# 13查看2022年“全球规模比重”最小的2条信息
print(data0411[data0411['年度']==2021].nsmallest(2,'全球规模比重'))
年度 地区排名 地区名称 地区国际代码 CTHI占比 避税评分 全球规模比重 企业避税天堂指数 35 2021 36 特克斯和凯科斯群岛 TCA 0.66 100.0 0.0 290 38 2021 39 安圭拉 AIA 0.58 100.0 0.0 255
In [15]:
# 14按照“全球规模比重”降序、“年度”升序进行排序
data0411.sort_values(by=['全球规模比重','年度'],ascending=[False,True],inplace=True)
print(data0411.head(10))
年度 地区排名 地区名称 地区国际代码 CTHI占比 避税评分 全球规模比重 企业避税天堂指数 94 2024 25 美国 USA 1.20 46.0 15.60 527 24 2021 25 美国 USA 1.16 46.8 12.36 514 76 2024 7 荷兰 NLD 4.50 74.0 11.10 1945 3 2021 4 荷兰 NLD 5.54 79.9 11.09 2454 5 2021 6 卢森堡 LUX 4.10 73.9 9.01 1814 79 2024 10 卢森堡 LUX 3.50 69.0 8.80 1480 87 2024 18 大不列颠及北爱尔兰联合王国 GBR 2.10 59.0 8.30 894 85 2024 16 中华人民共和国 CHN 2.30 62.0 7.30 974 12 2021 13 大不列颠及北爱尔兰联合王国 GBR 3.12 69.2 7.25 1382 75 2024 6 中国香港 HKG 4.50 78.0 7.10 1948
In [16]:
# 15按照“地区名称”进行升序排序
data0411.sort_values(by=['地区名称'],ascending=[True],inplace=True)
print(data0411.head(10))
年度 地区排名 地区名称 地区国际代码 CTHI占比 避税评分 全球规模比重 企业避税天堂指数 85 2024 16 中华人民共和国 CHN 2.30 62.0 7.30 974 18 2021 19 中华人民共和国 CHN 2.03 62.5 4.95 896 54 2021 55 中国台湾 TWN 0.22 43.4 0.17 98 118 2024 49 中国台湾 TWN 0.40 49.0 0.30 160 46 2021 47 中国澳门 MAC 0.39 58.1 0.07 174 117 2024 48 中国澳门 MAC 0.40 57.0 0.10 166 75 2024 6 中国香港 HKG 4.50 78.0 7.10 1948 6 2021 7 中国香港 HKG 4.08 77.9 5.55 1805 111 2024 42 丹麦 DNK 0.50 49.0 0.50 198 33 2021 34 丹麦 DNK 0.67 56.4 0.44 295
In [17]:
# 16基于“年度”进行分组,然后计算“全球规模比重”求和,以及“避税评分”均值
data0411_group=data0411.groupby('年度').agg({'全球规模比重':'sum','避税评分':'mean'}).reset_index()
print(data0411_group)
年度 全球规模比重 避税评分 0 2021 86.46 67.122857 1 2024 101.80 65.985714
In [18]:
# 17计算每个“地区名称”分年度的均值
per_mean=data0411.groupby(['地区名称','年度']).mean().reset_index()
print(per_mean)
地区名称 年度 地区排名 CTHI占比 避税评分 全球规模比重 企业避税天堂指数 0 中华人民共和国 2021 19 2.03 62.5 4.95 896 1 中华人民共和国 2024 16 2.30 62.0 7.30 974 2 中国台湾 2021 55 0.22 43.4 0.17 98 3 中国台湾 2024 49 0.40 49.0 0.30 160 4 中国澳门 2021 47 0.39 58.1 0.07 174 .. ... ... ... ... ... ... ... 135 马恩岛 2024 12 2.70 100.0 0.10 1144 136 马耳他 2021 21 1.72 79.1 0.37 763 137 马耳他 2024 20 1.70 77.0 0.40 747 138 黎巴嫩 2021 43 0.50 75.0 0.01 222 139 黎巴嫩 2024 44 0.40 72.0 0.10 187 [140 rows x 7 columns]
In [19]:
# 18统计每个地区上榜的次数
onlist_count=data0411['地区名称'].value_counts().reset_index()
onlist_count.columns=['地区名称','上榜次数']
onlist_count
Out[19]:
| 地区名称 | 上榜次数 | |
|---|---|---|
| 0 | 厄瓜多尔 | 2 |
| 1 | 立陶宛 | 2 |
| 2 | 利比里亚 | 2 |
| 3 | 瑞士 | 2 |
| 4 | 毛里求斯 | 2 |
| ... | ... | ... |
| 65 | 大不列颠及北爱尔兰联合王国 | 2 |
| 66 | 黎巴嫩 | 2 |
| 67 | 圣马力诺 | 2 |
| 68 | 特克斯和凯科斯群岛 | 2 |
| 69 | 库拉索 | 2 |
70 rows × 2 columns
In [20]:
# 19统计每个地区上榜的平均排名
per_rank=data0411.groupby(['地区名称'])['地区排名'].mean().reset_index()
per_rank.columns=['地区名称','平均排名']
per_rank
Out[20]:
| 地区名称 | 平均排名 | |
|---|---|---|
| 0 | 中华人民共和国 | 17.5 |
| 1 | 中国台湾 | 52.0 |
| 2 | 中国澳门 | 47.5 |
| 3 | 中国香港 | 6.5 |
| 4 | 丹麦 | 38.0 |
| ... | ... | ... |
| 65 | 阿根廷 | 68.0 |
| 66 | 阿鲁巴 | 54.5 |
| 67 | 马恩岛 | 16.0 |
| 68 | 马耳他 | 20.5 |
| 69 | 黎巴嫩 | 43.5 |
70 rows × 2 columns
In [21]:
# 20统计每个地区的平均“全球规模比重”、平均“避税评分”
data0411_group_2=data0411.groupby('地区名称').agg({'全球规模比重':'mean','避税评分':'mean'}).reset_index()
print(data0411_group_2)
地区名称 全球规模比重 避税评分 0 中华人民共和国 6.125 62.25 1 中国台湾 0.235 46.20 2 中国澳门 0.085 57.55 3 中国香港 6.325 77.95 4 丹麦 0.470 52.70 .. ... ... ... 65 阿根廷 0.165 32.55 66 阿鲁巴 0.050 70.55 67 马恩岛 0.080 100.00 68 马耳他 0.385 78.05 69 黎巴嫩 0.055 73.50 [70 rows x 3 columns]
In [22]:
# 21输出“中国香港”历年所有数据
print(data0411[data0411['地区名称']=='中国香港'])
年度 地区排名 地区名称 地区国际代码 CTHI占比 避税评分 全球规模比重 企业避税天堂指数 75 2024 6 中国香港 HKG 4.50 78.0 7.10 1948 6 2021 7 中国香港 HKG 4.08 77.9 5.55 1805
In [23]:
# 22使用交叉表输出每个地区的平均“避税评分”、“企业避税天堂指数”
print(pd.pivot_table(data0411,values=['避税评分','企业避税天堂指数'],index='地区名称', aggfunc='mean'))
企业避税天堂指数 避税评分 地区名称 中华人民共和国 935.0 62.25 中国台湾 129.0 46.20 中国澳门 170.0 57.55 中国香港 1876.5 77.95 丹麦 246.5 52.70 ... ... ... 阿根廷 39.0 32.55 阿鲁巴 118.0 70.55 马恩岛 997.0 100.00 马耳他 755.0 78.05 黎巴嫩 204.5 73.50 [70 rows x 2 columns]
In [24]:
# 23使用交叉表输出每年的平均“避税评分”、“企业避税天堂指数”
print(pd.pivot_table(data0411,values=['避税评分','企业避税天堂指数'],index='年度', aggfunc='mean'))
企业避税天堂指数 避税评分 年度 2021 632.257143 67.122857 2024 612.542857 65.985714
In [25]:
# 24输出“爱尔兰”年均“CTHI占比”、“避税评分”、“企业避税天堂指数”
print(data0411[data0411['地区名称'] == '爱尔兰'].groupby('年度').mean())
地区排名 CTHI占比 避税评分 全球规模比重 企业避税天堂指数 年度 2021 11 3.3 77.0 3.23 1459 2024 9 3.8 79.0 3.40 1622
In [26]:
# 25统计每个国家“避税评分”大于80的次数
print(data0411[data0411['避税评分'] > 80].groupby('地区名称').size())
地区名称 塞浦路斯 1 安圭拉 2 巴哈马 2 开曼群岛 2 新加坡 2 根西岛 2 毛里求斯 1 泽西岛 2 特克斯和凯科斯群岛 2 瑞士 2 百慕达 2 英属维尔京群岛 2 阿拉伯联合酋长国 2 马恩岛 2 dtype: int64
In [27]:
# 26输出2021年和2024年“企业避税天堂指数”最大的数据
print(data0411[(data0411['年度'] == 2021) | (data0411['年度'] == 2024)].nlargest(1, '企业避税天堂指数'))
年度 地区排名 地区名称 地区国际代码 CTHI占比 避税评分 全球规模比重 企业避税天堂指数 70 2024 1 英属维尔京群岛 VGB 7.1 100.0 2.9 3061
绘图¶
In [28]:
import matplotlib.pyplot as plt
import matplotlib.font_manager as fm
plt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus']=False
In [29]:
# 绘制2024年前10地区的避税得分的折线图
res1=data0411[data0411['年度']==2024].sort_values(by='避税评分',ascending=False).head(10)
print(res1)
年度 地区排名 地区名称 地区国际代码 CTHI占比 避税评分 全球规模比重 企业避税天堂指数 112 2024 43 特克斯和凯科斯群岛 TCA 0.4 100.0 0.1 191 70 2024 1 英属维尔京群岛 VGB 7.1 100.0 2.9 3061 82 2024 13 根西岛 GGY 2.6 100.0 0.1 1122 71 2024 2 开曼群岛 CYM 6.7 100.0 2.4 2891 81 2024 12 马恩岛 IMN 2.7 100.0 0.1 1144 80 2024 11 巴哈马 BHS 3.1 100.0 0.2 1313 104 2024 35 安圭拉 AIA 0.6 100.0 0.1 277 77 2024 8 泽西岛 JEY 4.1 100.0 0.5 1756 72 2024 3 百慕达 BMU 5.8 100.0 1.5 2478 73 2024 4 瑞士 CHE 5.3 89.0 3.4 2279
In [30]:
myfont = fm.FontProperties(fname='STHUPO.TTF',
size=12)
res1_x=res1['地区名称']
res1_y=res1['避税评分']
plt.plot(res1_x, res1_y, 'r-.v',label='避税评分')
plt.xlabel('地区名称', fontproperties=myfont)
plt.ylabel('避税评分', fontproperties=myfont)
# 设置图形标题
plt.title('2024年前10地区的避税得分的折线图', fontproperties=myfont, fontsize=20)
plt.legend(prop=myfont)
plt.tight_layout()
plt.show()
In [31]:
# 绘制2024年前10地区的CTHI占比、全球规模占比的柱状图
res2=data0411[data0411['年度']==2024].sort_values(by=['CTHI占比','全球规模比重'],ascending=False).head(10)
print(res2)
年度 地区排名 地区名称 地区国际代码 CTHI占比 避税评分 全球规模比重 企业避税天堂指数 70 2024 1 英属维尔京群岛 VGB 7.1 100.0 2.9 3061 71 2024 2 开曼群岛 CYM 6.7 100.0 2.4 2891 72 2024 3 百慕达 BMU 5.8 100.0 1.5 2478 73 2024 4 瑞士 CHE 5.3 89.0 3.4 2279 74 2024 5 新加坡 SGP 4.8 86.0 3.5 2059 76 2024 7 荷兰 NLD 4.5 74.0 11.1 1945 75 2024 6 中国香港 HKG 4.5 78.0 7.1 1948 77 2024 8 泽西岛 JEY 4.1 100.0 0.5 1756 78 2024 9 爱尔兰 IRL 3.8 79.0 3.4 1622 79 2024 10 卢森堡 LUX 3.5 69.0 8.8 1480
In [32]:
res2_x=res2['地区名称']
res2_y1=res2['CTHI占比']
res2_y2=res2['全球规模比重']
fig=plt.figure(facecolor='cyan',figsize=(10,6),dpi=300)
# ax = fig.gca(facecolor='#ffaaee')
# ax=ax,
# 绘制柱状图
plt.plot(kind='bar',color=['red','blue'])
# 柱子宽度
width = 0.35
# 生成横坐标位置
ind = list(range(len(res2_x)))
# 绘制第一组柱子(CTHI占比)
plt.bar([i - width/2 for i in ind], res2_y1, width=width, label='CTHI占比', color='red')
# 绘制第二组柱子(全球规模比重)
plt.bar([i + width/2 for i in ind], res2_y2, width=width, label='全球规模比重', color='blue')
# 设置x轴刻度和文本
plt.xticks(ind, res2_x, color='green', rotation=20)
# 设置y轴标签
plt.ylabel('占比数值', fontproperties=myfont)
# 设置图表标题
plt.title('2024年前10地区的CTHI占比、全球规模比重柱状图', fontproperties=myfont)
plt.legend()
plt.show()
In [33]:
res2_x=res2['地区名称']
res2_y1=res2['CTHI占比']
res2_y2=res2['全球规模比重']
data=pd.DataFrame({
'地区':res2_x,
'CTHI占比':res2_y1,
'全球规模比重':res2_y2,
})
data.plot(x='地区',kind='bar')
plt.xlabel('地区')
plt.ylabel('比重')
plt.show()
In [34]:
# 绘制2024年前10地区的企业避税天堂指数的雷达图
res3=data0411[data0411['年度']==2024].sort_values(by=['企业避税天堂指数'],ascending=False).head(10)
print(res3)
年度 地区排名 地区名称 地区国际代码 CTHI占比 避税评分 全球规模比重 企业避税天堂指数 70 2024 1 英属维尔京群岛 VGB 7.1 100.0 2.9 3061 71 2024 2 开曼群岛 CYM 6.7 100.0 2.4 2891 72 2024 3 百慕达 BMU 5.8 100.0 1.5 2478 73 2024 4 瑞士 CHE 5.3 89.0 3.4 2279 74 2024 5 新加坡 SGP 4.8 86.0 3.5 2059 75 2024 6 中国香港 HKG 4.5 78.0 7.1 1948 76 2024 7 荷兰 NLD 4.5 74.0 11.1 1945 77 2024 8 泽西岛 JEY 4.1 100.0 0.5 1756 78 2024 9 爱尔兰 IRL 3.8 79.0 3.4 1622 79 2024 10 卢森堡 LUX 3.5 69.0 8.8 1480
In [35]:
regions = res3['地区名称'] # 地区名称
index_values = res3['企业避税天堂指数'] # 避税天堂指数值
# 计算雷达图的角度
angles = np.linspace(0, 2 * np.pi, len(regions), endpoint=False).tolist()
angles += angles[:1] # 闭合图形
# 复制指数值,使图形闭合
index_values = index_values.tolist()
index_values += index_values[:1]
# 绘制雷达图
fig, ax = plt.subplots(figsize=(8, 8), subplot_kw=dict(polar=True))
ax.plot(angles, index_values, 'o-', linewidth=2)
ax.fill(angles, index_values, alpha=0.25)
# 设置角度标签
ax.set_thetagrids(np.degrees(angles[:-1]), regions, fontsize=10)
# 设置标题
ax.set_title("2024年前10地区企业避税天堂指数雷达图", fontsize=15)
# 设置极坐标网格标签
ax.set_rlabel_position(180 / len(regions))
ax.set_rgrids([0, 20, 40, 60, 80, 100], angle=180 / len(regions), fontsize=8)
# 显示图形
plt.show()