#!/usr/bin/env python
# coding: utf-8

# # Pivotaje de tablas

# In[2]:


# Es el equivalente a las tablas dinámica en Excel


# In[3]:


import numpy as np
import pandas as pd
import seaborn as sns
titanic = sns.load_dataset('titanic')


# In[5]:


titanic


# In[6]:


titanic.info()


# ## Extracción de los porcentajes de superviviencia por clase

# In[4]:


titanic.pivot_table('survived', 'class')


# In[8]:


# Si quisiéramos obtener no los porcentajes de supervivencia, sino los totales, usaremos una función de agregación
titanic.pivot_table('survived', 'class', aggfunc=np.sum)


# In[10]:


# ¿Y si quisiéramos obtener el porcentaje de supervivencia, segregado por sexo y clase?
titanic.pivot_table('survived', ['sex', 'alone'], 'class')


# In[11]:


# Complicamos un poco más el ejemplo
titanic.pivot_table('survived',
                    ['sex', 'alone'],
                    ['embark_town', 'class'])


# ## Múltiples funciones de agregación

# In[13]:


# Mostrar el precio medio pagado por el pasaje, en función de su clase y sexo, y además, 
# el total de supervivientes segregados por clase y sexo
titanic.pivot_table(index='sex', columns='class',
                    aggfunc={'survived': np.sum,
                             'fare': np.mean})


# In[ ]:




