Pandas
En Python
Concepto
• Es un paquete que permite trabajar con datos multidimensionales, los
cuales son comunes en estadística, su nombre viene de panel dataset
• Es muy útil para manipular tablas de datos como lo son los
dataframes
• Es de tener en cuenta que diferentes tipos de variables pueden
encajar en la misma tabla.
• Está construido sobre Numpy, lo que hace que sea más rápido y
eficiente.
Crear dataframes
• 1. Se importa el paquete de pandas
import pandas as pd
• 2. Se pueden crear a partir de una lista de datos, para el ejemplo tenemos datos
de las redes sociales (nombre, cantidad_usuarios, pertenece o no a facebook y el
año)
# datos de Redes sociales 2020
fbk = ['Facebook', 2449, True, 2006]
twt = ['Twitter', 339, False, 2006]
ig = ['Instagram', 1000, True, 2010]
yt = ['YouTube', 2000, False, 2005]
lkn = ['LinkedIn', 663, False, 2003]
wsp = ['WhatsApp', 1600, True, 2009]
Crear dataframes
• 3. Se crea la lista con los nombres de las listas anteriores
• #Variable en donde están las listas
•
lista_rrss = [fbk, twt, ig, yt, lkn, wsp]
• 4. Para esto se utiliza la función pd.Dataframe
•
# crear dataframe a partir de listas
• df_rrss = pd.DataFrame(lista_rrss,
• columns = ['Nombre', 'Cantidad', 'ES_FBK',
'Año'])
•
print(df_rrss)
Crear dataframes
5. Resultado
Nombre Cantidad ES_FBK Año
0 Facebook 2449 True 2006
1 Twitter 339 False 2006
2 Instagram 1000 True 2010
3 YouTube 2000 False 2005
4 LinkedIn 663 False 2003
5 WhatsApp 1600 True 2009
Crear dataframes
Otra forma de crear dataframe es haciendo uso de dataframes vacíos
1. Aquí ya no pasamos una lista si no las columnas directamente
df_vacio = pd.DataFrame(columns = ['Nombre',
'Cantidad', 'ES_FBK', 'Año’])
2. Mostramos el dataframe y verificamos que está vacío
print(df_vacio)
Empty DataFrame
Columns: [Nombre, Cantidad, ES_FBK, Año]
Index: []
Crear dataframes
3. Para agregar los datos tenemos que asignar los elementos con la función append
df_vacio = df_vacio.append({'Nombre' : 'Facebook',
'Cantidad' : 2449,
'ES_FBK' : True,
'Año' : 2006}, ignore_index
True)
print(df_vacio)
0 Facebook 2449 True 2006
• Estas son algunas formas, pero lo más común es traer la data desde un archivo CSV o
Excel
Seleccionar elementos
• #Seleccionar elementos por etiquetas
• #Método de localización
• df_rrss.loc[1, 'Nombre’]
• #Seleccionar elementos por número
• df_rrss.iloc[1, 0]
•
#Seleccionar por columnas
• df_rrss['Nombre']
Seleccionar elementos
• #Seleccionar por filas
•
df_rrss.iloc[4]
•
#Seleccionar por condición booleana
•
df_rrss['Cantidad']>1500
•
print(df_rrss[df_rrss['Cantidad']>1500])
Seleccionar elementos
Resultado
Nombre Cantidad ES_FBK Año
0 Facebook 2449 True 2006
3 YouTube 2000 False 2005
5 WhatsApp 1600 True 2009
Ordenar Columnas
• Puede ser de forma ascendente
• Menor a mayor
• df_rrss.sort_values('Nombre', ascending=True)
• Descendente:
• Mayor a menor
• df_rrss.sort_values('Cantidad', ascending=False)
• Ordenar por dos columnas
• df_rrss.sort_values(['Año', 'Cantidad'],
ascending=[True, False])
Ing. Narly Sánchez
Gracias!