使用 Pandas 统计泰坦尼克号各等级独自乘坐和非独自乘坐人数
使用 Pandas 统计泰坦尼克号各等级独自乘坐和非独自乘坐人数
本教程将演示如何使用 Python 的 Pandas 库分析泰坦尼克号乘客数据,并统计各等级(Pclass)独自乘坐和非独自乘坐的人数。
数据准备:
假设您有一个名为 'Titanic.csv' 的文件,其中包含泰坦尼克号乘客数据,并且该文件包含 'PassengerId', 'Pclass' 和 'SibSp' 等列。
**代码:**pythonimport pandas as pd
读取文件数据,并将PassengerId列设置为行索引。passenger_df = pd.read_csv('Titanic.csv', index_col='PassengerId')
创建一个新的DataFrame,只包含独自乘坐的乘客alone_df = passenger_df[passenger_df['SibSp'] == 0]
统计各等级独自乘坐的人数alone_counts = alone_df['Pclass'].value_counts()
创建一个新的DataFrame,只包含非独自乘坐的乘客not_alone_df = passenger_df[passenger_df['SibSp'] > 0]
统计各等级非独自乘坐的人数not_alone_counts = not_alone_df['Pclass'].value_counts()
将结果进行合并result_df = pd.concat([alone_counts, not_alone_counts], axis=1)result_df.columns = ['独自乘坐人数', '非独自乘坐人数']result_df = result_df.fillna(0) # 将缺失值填充为0
print(result_df)
代码解释:
- 首先,我们使用
pd.read_csv()函数读取 'Titanic.csv' 文件,并使用index_col参数将 'PassengerId' 列设置为 DataFrame 的索引。2. 然后,我们根据 'SibSp' 列的值创建两个新的 DataFrame,分别存储独自乘坐和非独自乘坐的乘客数据。3. 接下来,我们使用value_counts()函数统计每个等级的乘客数量。4. 然后,我们使用pd.concat()函数将两个结果合并成一个 DataFrame。5. 最后,我们使用fillna(0)函数将缺失值填充为 0,并使用print()函数打印结果。
结果:
运行以上代码,您将获得一个 DataFrame,其中显示了每个等级独自乘坐和非独自乘坐的人数。
总结:
本教程演示了如何使用 Pandas 分析泰坦尼克号乘客数据,并统计各等级独自乘坐和非独自乘坐的人数。您可以使用类似的方法分析其他数据集,并提取有价值的信息。
原文地址: https://www.cveoy.top/t/topic/bYzA 著作权归作者所有。请勿转载和采集!