首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >用海运可视化概率的最合适的情节

用海运可视化概率的最合适的情节
EN

Stack Overflow用户
提问于 2017-10-08 20:33:40
回答 1查看 737关注 0票数 0

我正在试验使用“泰坦尼克号”数据集的“海运”,并使用一张条形图来可视化乘客的等级,以获得最高的生存概率。

现在,我想知道是否有更好的方式来可视化这样的数据与海运?任何可视化的想法都是欢迎的。

代码语言:javascript
运行
复制
df2.groupby(['Survived', 'Pclass']).size().unstack().plot(kind='bar', stacked=True)

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-10-13 20:44:33

要绘制出每一班幸存乘客的比例,您可以做以下操作。

代码语言:javascript
运行
复制
import seaborn as sns

sns.set(style='ticks', context='talk')
titanic = sns.load_dataset('titanic')

ax = sns.pointplot('pclass', 'survived', data=titanic, join=False, palette='Set2')
ax.set_ylim(0, 1)
sns.despine()

如果您对乘客级别与生存之间的相关性感兴趣(如@cᴏʟᴅsᴘᴇᴇᴅ中的评论所示),您可以发现如下所示:

代码语言:javascript
运行
复制
# Create binary dummy variables for each passenger class
titanic['pclass1'] = titanic['pclass'] == 1
titanic['pclass2'] = titanic['pclass'] == 2
titanic['pclass3'] = titanic['pclass'] == 3
# Create correlation matrix only for the columns of interest
plot_data = (titanic[['survived', 'pclass1', 'pclass2', 'pclass3']]
    .corr()
    .loc['survived', 'pclass1':]
    .to_frame()
    .T)
# Plot the correlation coefficients
ax = sns.barplot(data=plot_data)
ax.axhline(0, color='black')
sns.despine()

.corr()的默认相关方法是计算皮尔逊相关系数(r),这是计算维基百科这是来自Quora的数据二元变量间相关性的合适选择。

更新2017-10-18

一种更可伸缩的方法来创建虚拟变量来使用pd.get_dummies()。因此,可以在没有单独的列赋值的情况下生成plot_data

代码语言:javascript
运行
复制
plot_data = (pd.concat(
    [pd.get_dummies(titanic['pclass'], prefix='pclass', prefix_sep=''),
        titanic['survived']], axis=1)
    .corr()
    .loc['survived', 'pclass1':]
    .to_frame()
    .T)
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46635777

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档