import pandas as pd
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['SimHei']
#准备数据
survived=[0,1,1,1,0,1,0,0,1,0,1,0,1,0,1,0,1,0,1,0]
pclass=[3,1,3,1,3,1,3,1,1,3,3,1,3,1,3,1,3,1,1,3]
sex=['m','w','w','m','w','w','m','w','w','m','w','w','m','w','w','m','w','w','w','m']
age=[22.0,45.0,21.0,22.0,22.0,45.0,21.0,22.0,36.0,27.0,22.0,45.0,21.0,22.0,22.0,45.0,21.0,22.0,36.0,27.0]
fare=[7.23,71.28,12.45,12.67,11.89,32.78,12.87,45.36,21.98,12.90,7.23,71.28,12.45,12.67,11.89,32.78,12.87,45.36,21.98,12.90]
#将数据存到DF,csv,DF
df=pd.DataFrame({'survived':survived,'pclass':pclass,'sex':sex,'age':age,'fare':fare})
df.to_csv('titanic.csv')
df2=pd.read_csv('titanic.csv')
#处理数据
df3=df2.groupby('pclass').sum()/df2.groupby('pclass').count()
plt.subplot(1,3,1)
plt.bar(df3.index,df3['survived'])
plt.title("生存率关系图")
plt.xlabel('位等')
plt.ylabel('生存率')
df3=df2.groupby('sex').sum()/df2.groupby('sex').count()
plt.subplot(1,3,2)
plt.bar(df3.index,df3['survived'])
plt.title("生存率关系图")
plt.xlabel('性')
plt.ylabel('生存率')
df3=df2.groupby('survived').size()/len(df2)
plt.subplot(1,3,3)
plt.pie(df3,labels=df3.index,autopct="%.f%%")
plt.title("关系图")
plt.show()
matplotlib(12)
最新推荐文章于 2025-12-20 09:26:15 发布
本文通过Python分析了泰坦尼克号乘客的数据,展示了不同等级、性别与生存率的关系,并使用柱状图和饼图进行可视化。
1602

被折叠的 条评论
为什么被折叠?



