El 9 de enero se lanzó Pandas 1.0.0rc. La versión anterior de la biblioteca es 0.25.
La primera versión importante contiene muchas características nuevas excelentes, incluido un resumen automático mejorado de marcos de datos, más formatos de salida, nuevos tipos de datos e incluso un nuevo sitio de documentación.
Todos los cambios se pueden ver.
Puede instalar la biblioteca como de costumbre usando pepita, pero dado que al momento de escribir este artículo Pandas 1.0 todavía está versión candidata, deberá especificar explícitamente la versión:
pip install --upgrade pandas==1.0.0rc0
Tenga cuidado: dado que se trata de una versión importante, la actualización puede romper el código anterior.
Por cierto, el soporte para Python 2 ha sido completamente descontinuado desde esta versión (¿Cuál podría ser una buena razón?
$ pip --version
pip 19.3.1 from /usr/local/lib/python3.7/site-packages/pip (python 3.7)
$ python --version
Python 3.7.5
La forma más sencilla de comprobar la versión de Pandas es esta:
>>> import pandas as pd
>>> pd.__version__
1.0.0rc0
Resumen automático mejorado con DataFrame.info
Mi innovación favorita fue la actualización del método. Marco de datos.info. La función se ha vuelto mucho más legible, lo que facilita aún más el proceso de exploración de datos:
>>> df = pd.DataFrame({
...: 'A': [1,2,3],
...: 'B': ["goodbye", "cruel", "world"],
...: 'C': [False, True, False]
...:})
>>> df.info()
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 3 entries, 0 to 2
Data columns (total 3 columns):
# Column Non-Null Count Dtype
--- ------ -------------- -----
0 A 3 non-null int64
1 B 3 non-null object
2 C 3 non-null object
dtypes: int64(1), object(2)
memory usage: 200.0+ bytes
Generar tablas en formato Markdown
Una innovación igualmente agradable es la capacidad de exportar marcos de datos a tablas Markdown usando Marco de datos.to_markdown.
>>> df.to_markdown()
| | A | B | C |
|---:|----:|:--------|:------|
| 0 | 1 | goodbye | False |
| 1 | 2 | cruel | True |
| 2 | 3 | world | False |
Esto hace que sea mucho más fácil publicar tablas en sitios como Medium usando github gists.
Nuevos tipos para cadenas y booleanos.
La versión Pandas 1.0 también agregó nuevas experimental tipos. Es posible que su API aún cambie, así que úsela con precaución. Pero, en general, Pandas recomienda utilizar nuevos tipos siempre que tenga sentido.
Por ahora, el reparto debe hacerse de forma explícita:
>>> B = pd.Series(["goodbye", "cruel", "world"], dtype="string")
>>> C = pd.Series([False, True, False], dtype="bool")
>>> df.B = B, df.C = C
>>> df.info()
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 3 entries, 0 to 2
Data columns (total 3 columns):
# Column Non-Null Count Dtype
--- ------ -------------- -----
0 A 3 non-null int64
1 B 3 non-null string
2 C 3 non-null bool
dtypes: int64(1), object(1), string(1)
memory usage: 200.0+ bytes
Observe cómo la columna Tipo D muestra nuevos tipos: cadena и bool.
La característica más útil del nuevo tipo de cadena es la capacidad de seleccionar solo columnas de fila de marcos de datos. Esto puede facilitar mucho el análisis de datos de texto:
df.select_dtypes("string")
Anteriormente, las columnas de fila no se podían seleccionar sin especificar explícitamente los nombres.
Puedes leer más sobre nuevos tipos.
¡Gracias por leer! La lista completa de cambios, como ya se mencionó, se puede ver
Fuente: habr.com