gpt4 book ai didi

python - 如何从分组数据创建直方图

转载 作者:太空宇宙 更新时间:2023-11-03 10:59:58 24 4
gpt4 key购买 nike

我正在尝试根据 pandas 中的分组数据创建直方图。

到目前为止,我已经能够创建标准线图。但我不知道如何做同样的事情来获得直方图(条形图)。我想获得泰坦尼克号撞击幸存者和未幸存者的 2 个年龄直方图 - 看看年龄分布是否存在差异。

源数据: https://www.udacity.com/api/nodes/5454512672/supplemental_media/titanic-datacsv/download

到目前为止我的代码:

import pandas as pn
titanic = pn.DataFrame.from_csv('titanic_data.csv')

SurvivedAge= titanic.groupby(['Survived','Age']).size()
SurvivedAge=SurvivedAge.reset_index()
SurvivedAge.columns=['Survived', 'Age', 'Num']
SurvivedAge.index=(SurvivedAge['Survived'])
del SurvivedAge['Survived']

SurvivedAget=SurvivedAge.reset_index().pivot('Age', 'Survived','Num')

SurvivedAget.plot()

当我尝试根据该数据集绘制直方图时,我得到了奇怪的结果。

SurvivedAget.hist()

我将不胜感激。

最佳答案

您可以:

titanic = pd.read_csv('titanic_data.csv')
survival_by_age = titanic.groupby(['Age', 'Survived']).size().unstack('Survived')
survival_by_age.columns = ['No', 'Yes']
survival_by_age.plot.bar(title='Survival by Age')

得到:

enter image description here

你可以进一步tweak .您还可以合并分数年龄,以便您可以使用整数索引,或 bin将数据放入 5 岁的年龄跨度以获得更加用户友好的输出。然后是seaborn具有各种类型的分布图。

关于python - 如何从分组数据创建直方图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34878948/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com