w3resource

Pandas Pivot Titanic: Find survival rate by gender, age of the different categories of various classes and fare


10. Pivot Table: Survival Rate by Gender, Age, and Fare Partition

Write a Pandas program to create a Pivot table and find survival rate by gender, age of the different categories of various classes. Add the fare as a dimension of columns and partition fare column into 2 categories based on the values present in fare columns. Go to Editor

Sample Solution:

Python Code :

import pandas as pd
import numpy as np
df = pd.read_csv('titanic.csv')
fare = pd.qcut(df['fare'], 2)
age = pd.cut(df['age'], [0, 10, 30, 60, 80])
result = df.pivot_table('survived', index=['sex', age], columns=[fare, 'pclass'])
print(result)

Sample Output:

fare            (-0.001, 14.454]              ...    (14.454, 512.329]          
pclass                         1         2    ...                    2         3
sex    age                                    ...                               
female (0, 10]               NaN       NaN    ...             1.000000  0.411765
       (10, 30]              NaN  0.933333    ...             0.904762  0.307692
       (30, 60]              NaN  0.846154    ...             0.941176  0.333333
       (60, 80]              NaN       NaN    ...                  NaN       NaN
male   (0, 10]               NaN       NaN    ...             1.000000  0.263158
       (10, 30]              NaN  0.034483    ...             0.000000  0.130435
       (30, 60]              0.0  0.130435    ...             0.047619  0.166667
       (60, 80]              NaN  0.333333    ...                  NaN       NaN

[8 rows x 6 columns]            

For more Practice: Solve these Related Problems:

  • Write a Pandas program to create a pivot table that calculates survival rates by gender and age categories, and also partitions the fare column into two groups.
  • Write a Pandas program to generate a multi-dimensional pivot table that includes fare categories along with gender and age-based survival rates.
  • Write a Pandas program to build a pivot table from titanic.csv that groups data by gender, age intervals, and fare ranges, then computes survival percentages.
  • Write a Pandas program to create a pivot table that segments passengers by gender, age category, and a binary fare classification, displaying the survival rate for each group.

Go to:


Previous: Write a Pandas program to create a Pivot table and find survival rate by gender, age of the different categories of various classes.
Next: Write a Pandas program to create a Pivot table and calculate number of women and men were in a particular cabin class.

Python Code Editor:


Pivot Titanic.csv:


Have another way to solve this solution? Contribute your code (and comments) through Disqus.

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.



Follow us on Facebook and Twitter for latest update.