O que nos trouxo Pandas 1.0

O que nos trouxo Pandas 1.0

O 9 de xaneiro lanzouse Pandas 1.0.0rc. A versión anterior da biblioteca é a 0.25.

A primeira versión principal contén moitas funcións novas e fantásticas, incluíndo un resumo automático de marcos de datos mellorado, máis formatos de saída, novos tipos de datos e mesmo un novo sitio de documentación.

Pódense ver todos os cambios aquí, no artigo limitarémonos a unha pequena revisión, menos técnica, das cousas máis importantes.

Podes instalar a biblioteca como de costume usando PIP, pero xa que no momento de escribir Pandas 1.0 aínda está liberar candidato, terá que especificar explícitamente a versión:

pip install --upgrade pandas==1.0.0rc0

Teña coidado: xa que esta é unha versión importante, a actualización pode romper o código antigo.

Por certo, o soporte para Python 2 foi completamente descontinuado desde esta versión (que pode ser unha boa razón actualizar - aprox. tradución). Pandas 1.0 require polo menos Python 3.6+, polo que se non está seguro, comprobe cal instalou:

$ pip --version
pip 19.3.1 from /usr/local/lib/python3.7/site-packages/pip (python 3.7)

$ python --version
Python 3.7.5

A forma máis sinxela de comprobar a versión de Pandas é esta:

>>> import pandas as pd
>>> pd.__version__
1.0.0rc0

Auto-resumo mellorado con DataFrame.info

A miña innovación favorita foi a actualización do método DataFrame.info. A función fíxose moito máis lexible, facilitando aínda máis o 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

Saída de táboas en formato Markdown

Unha innovación igualmente agradable é a capacidade de exportar marcos de datos a táboas de Markdown usando DataFrame.to_markdown.

>>> df.to_markdown()
|    |   A | B       | C     |
|---:|----:|:--------|:------|
|  0 |   1 | goodbye | False |
|  1 |   2 | cruel   | True  |
|  2 |   3 | world   | False |

Isto fai que sexa moito máis doado publicar táboas en sitios como Medium usando gists github.

O que nos trouxo Pandas 1.0

Novos tipos para cadeas e booleanos

A versión 1.0 de Pandas tamén engadiu novas experimental tipos. A súa API aínda pode cambiar, así que úsaa con precaución. Pero, en xeral, Pandas recomenda usar novos tipos sempre que teña sentido.

Polo momento, o reparto debe facerse 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

Fíxate como a columna Tipo D mostra novos tipos − corda и tolo.

A característica máis útil do novo tipo de cadea é a posibilidade de seleccionar só columnas de filas desde marcos de datos. Isto pode facilitar moito a análise de datos de texto:

df.select_dtypes("string")

Anteriormente, as columnas de filas non se podían seleccionar sen especificar explícitamente os nomes.

Podes ler máis sobre novos tipos aquí.

Grazas por ler! A lista completa de cambios, como xa se mencionou, pódese ver aquí.

Fonte: www.habr.com

Engadir un comentario