Ciò chì Pandas 1.0 ci hà purtatu

Ciò chì Pandas 1.0 ci hà purtatu

U 9 ​​di ghjennaghju, Pandas 1.0.0rc hè stata liberata. A versione precedente di a biblioteca hè 0.25.

A prima liberazione maiò cuntene assai grandi funziunalità novi, cumpresi un riassuntu automaticu di dataframe mejoratu, più furmati di output, novi tipi di dati, è ancu un novu situ di documentazione.

Tutti i cambiamenti ponu esse vistu ccà, In l'articulu, ci limiteremu à una piccula, menu tecnica di rivisione di e cose più impurtanti.

Pudete installà a biblioteca cum'è di solitu usendu seme, ma postu chì à u mumentu di a scrittura Pandas 1.0 hè sempre candidatu di liberazione, vi tuccherà à specificà esplicitamente a versione:

pip install --upgrade pandas==1.0.0rc0

Attenti: postu chì questu hè una versione maiò, l'aghjurnamentu pò rompe u vechju codice!

A propositu, u supportu per Python 2 hè stata interrotta da sta versione (chì puderia esse una bona ragione aghjurnamentu - ca. traduzzione). Pandas 1.0 richiede almenu Python 3.6+, dunque se ùn site micca sicuru, verificate quale avete installatu:

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

$ python --version
Python 3.7.5

U modu più faciule per verificà a versione Pandas hè questu:

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

Auto-summarizazione mejorata cù DataFrame.info

A mo innuvazione preferita era l'aghjurnamentu di u metudu DataFrame.info. A funzione hè diventata assai più leggibile, rendendu u prucessu di esplorazione di dati ancu più faciule:

>>> 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

Outputing tabelle in u furmatu Markdown

Un'innuvazione ugualmente piacevule hè a capacità di esportà dataframes à e tavule Markdown usendu DataFrame.to_markdown.

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

Questu rende assai più faciule di publicà tavule nantu à siti cum'è Medium usendu github gists.

Ciò chì Pandas 1.0 ci hà purtatu

Tipi novi per strings è booleani

A versione Pandas 1.0 hà aghjustatu ancu novu sperimentale tippi. A so API pò ancu cambià, cusì aduprate cun prudenza. Ma in generale, Pandas ricumanda di utilizà novi tippi induve hè sensu.

Per avà, u cast deve esse fattu esplicitamente:

>>> 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

Avvisu cumu a colonna Dtype mostra novi tipi - string и boul.

A funzione più utile di u novu tipu di stringa hè a selezzione solu colonne di fila da dataframes. Questu pò fà l'analisi di dati di testu assai più faciule:

df.select_dtypes("string")

Nanzu, e colonne di fila ùn pudianu esse selezziunate senza specificà esplicitamente i nomi.

Pudete leghje più nantu à i novi tipi ccà.

Grazie per leghje! A lista completa di cambiamenti, cum'è digià citatu, pò esse vistu ccà.

Source: www.habr.com

Add a comment