pandas
26 pasos en 7 series de Python.
La biblioteca de dataframes que convirtió a Python en una opción seria para trabajar con datos, y aquella cuya API vas a estar leyendo en los notebooks de otros durante años. Series y frames, luego seleccionar filas, que es donde loc e iloc se ganan su fama de confundir a todo el mundo al menos una vez.
Derivar columnas, groupby, remodelar y unir, y después series de tiempo, que pandas maneja mejor que casi cualquier otra cosa y son la razón por la que mucha gente nunca se va.
Series y frames
- SeriesUna Series es una columna: valores más un índice que viaja con ellos.
- DataFrameUn DataFrame es un dict de Series que comparten un índice.
- Leer CSVread_csv es la puerta de entrada: apúntalo al texto, dile los tipos.
- Tipos y conversiónLos tipos de pandas deciden qué operaciones existen y cuánta memoria cuestan.
Seleccionar filas
- Seleccionar columnasUna columna es una Series; una lista de columnas, un DataFrame.
- loc e ilocloc trabaja con etiquetas, iloc con posiciones — y mezclarlos es el bug clásico.
- Filtrado booleanoUna Series booleana selecciona filas; combina condiciones con & y |, entre paréntesis.
- Ordenamiento y rankingOrdena por valores o por índice, y asigna rangos sin reordenar.
Derivar columnas
- Agregar columnasassign devuelve un frame nuevo, y eso es lo que vuelve seguro encadenar.
- apply, map y vectorizaciónapply es un bucle con sombrero elegante: primero busca una expresión vectorizada.
- Encadenar métodos con pipepipe mete tu propia función en la cadena, y toda la transformación se lee de arriba abajo.
- El accesor .strMétodos de cadenas vectorizados, con los mismos nombres que los de Python.
- CategóricosUna columna category guarda cada etiqueta una sola vez y puede llevar un orden.
Agrupación
- groupbyDividir por una clave, aplicar una función, combinar las respuestas.
- Agregar de varias formas a la vezagg nombra las salidas, así el resultado no necesita renombrarse después.
- transform y valores relativos al grupotransform devuelve un valor por fila, así que se alinea con el dataframe original.
- Contar valoresvalue_counts es lo primero que corres en cualquier columna categórica.
- Datos faltantesEncontrar huecos, rellenarlos y decidir cuándo mejor descartar la fila.
Remodelado y joins
- Combinar dataframesmerge es un join de SQL: claves, un how y sufijos cuando los nombres chocan.
- Apilar dataframesconcat pega dataframes, hacia abajo por las filas o a lo ancho por las columnas.
- Pivotearpivot_table reacomoda datos largos en una cuadrícula y agrega donde las claves se repiten.
- Volver a formato largomelt es el inverso del pivote: las columnas anchas se vuelven filas clave-valor.
Series de tiempo
- FechasParsea a datetime una sola vez; después el accesor .dt responde todo lo demás.
- Remuestrear una serie de tiemporesample es el groupby del tiempo: eliges una frecuencia y un agregado.
- Ventanas móvilesUn promedio móvil suaviza una serie ruidosa sin perder su forma.
Bis
- pd_run_report.pyUn reporte de pandas de punta a punta: parsear, limpiar, derivar, agrupar y clasificar.