Pandas Pivot Titanic: Find survival rate by gender, age of the different categories of various classes and fare
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]
Python Code Editor:
Pivot Titanic.csv:
Have another way to solve this solution? Contribute your code (and comments) through Disqus.
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.
What is the difficulty level of this exercise?
Test your Programming skills with w3resource's quiz.
- Weekly Trends and Language Statistics
- Weekly Trends and Language Statistics