El 9 de gener es va llançar Pandas 1.0.0rc. La versió anterior de la biblioteca és la 0.25.
La primera versió important conté moltes funcions noves i fantàstiques, com ara un resum de marc de dades automàtic millorat, més formats de sortida, nous tipus de dades i fins i tot un nou lloc de documentació.
Tots els canvis es poden veure
Podeu instal·lar la biblioteca com de costum utilitzant pip, però ja que en el moment d'escriure Pandas 1.0 encara està candidat d’alliberament, haureu d'especificar explícitament la versió:
pip install --upgrade pandas==1.0.0rc0
Aneu amb compte: com que es tracta d'una versió important, l'actualització pot trencar el codi antic!
Per cert, el suport per a Python 2 s'ha interromput completament des d'aquesta versió (quina pot ser una bona raó
$ 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 manera més senzilla de comprovar la versió de Pandas és aquesta:
>>> import pandas as pd
>>> pd.__version__
1.0.0rc0
S'ha millorat el resum automàtic amb DataFrame.info
La meva innovació preferida va ser l'actualització del mètode DataFrame.info. La funció s'ha tornat molt més llegible, facilitant encara més el procés d'exploració de dades:
>>> 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
Sortida de taules en format Markdown
Una innovació igualment agradable és la possibilitat d'exportar marcs de dades a taules de Markdown utilitzant DataFrame.to_markdown.
>>> df.to_markdown()
| | A | B | C |
|---:|----:|:--------|:------|
| 0 | 1 | goodbye | False |
| 1 | 2 | cruel | True |
| 2 | 3 | world | False |
Això fa que sigui molt més fàcil publicar taules en llocs com Medium utilitzant les bases de github.
Nous tipus per a cadenes i booleans
La versió Pandas 1.0 també s'ha afegit nou experimental tipus. La seva API encara pot canviar, així que utilitzeu-la amb precaució. Però, en general, Pandas recomana utilitzar nous tipus allà on tingui sentit.
De moment, el repartiment s'ha de fer de manera 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
Observeu com la columna Tipus D mostra nous tipus − cadena и bool.
La característica més útil del nou tipus de cadena és la possibilitat de seleccionar només columnes de fila des de marcs de dades. Això pot fer que l'anàlisi de dades de text sigui molt més fàcil:
df.select_dtypes("string")
Anteriorment, les columnes de files no es podien seleccionar sense especificar explícitament els noms.
Podeu llegir més sobre els nous tipus
Gràcies per llegir! La llista completa de canvis, com ja s'ha esmentat, es pot consultar
Font: www.habr.com