作业一:历年500强企业行业分布(考察数据透视表的使用 )
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False
sns.set(font='SimHei')
df = pd.read_csv("D:/数据文件/Fortune500-China.csv",encoding='gb2312', usecols=["Year", "Company", "Industry"])
#根据'Year','Industry'分组统计值
df = df.groupby(['Year','Industry']).size().reset_index(name='count')
dfcount=pd.pivot_table(df, index=['Industry'], columns='Year', values= "count")
dfcount
使用 jupyter notebook执行效果(核心要点:使用pivot_table 分组统计后行转列显示)
作业二:2020年中国500强企业最多的15个行业
#1、导入可视化库,并设置中文字体 (matplotlib 作条形图)
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False
sns.set(font='SimHei')
#2、数据导入,3作图数据
df = pd.read_csv("D:/数据文件/Fortune500-China.csv",encoding='gb2312', usecols=["Year", "Industry","Company"])
df = df[(df['Year']==2020)]
df = df.groupby('Industry').size().reset_index(name='count')
df = df.sort_values(by='count',ascending=True).head(15)
df
#4、选择可视化的图表类型并实现
fig=plt.figure(figsize=(9,4),dpi=70)
plt.barh(df['Industry'], df['count'])
#5、图例注释等装饰
plt.ylabel('行业名称')
plt.title('2020年中国500强企业最多的15个行业')
#plt.gca().invert_yaxis()
plt.show()
使用 jupyter notebook执行效果(核心要点:使用barh画图形图)
作业三:2021年中国500强人均利润最高的行业Top15
#1、导入可视化库,并设置中文字体(matplotlib作条形图)
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False
sns.set(font='SimHei')
#2、数据导入,3作图数据 #df['人均利润'].mean()
df = pd.read_csv("D:/数据文件/Fortune500-China.csv",encoding='gb2312', usecols=["Year", "Industry","Profit", "Employee","人均利润"])
df = df[(df['Year']==2021)&(df['人均利润']!='#DIV/0!')]
dfNew = df.groupby('Industry')[['Profit', 'Employee']].sum().reset_index()
dfNew['ProfitAvg'] = dfNew['Profit']/dfNew['Employee']
dfNew = dfNew.sort_values(by='ProfitAvg',ascending=True).head(15)
dfNew
#4、选择可视化的图表类型并实现
fig=plt.figure(figsize=(9,4),dpi=70)
plt.barh(dfNew['Industry'], dfNew['ProfitAvg'])
#5、图例注释等装饰
plt.ylabel('行业名称')
plt.title('2021年中国500强人均利润最高的行业Top15(百万元)')
plt.show()
使用 jupyter notebook执行效果(核心要点:使用barh画图形图)
附件下载: