Il 9 gennaio è stato rilasciato Pandas 1.0.0rc. La versione precedente della libreria è la 0.25.
La prima versione principale contiene molte nuove fantastiche funzionalità, tra cui un riepilogo automatico migliorato dei frame di dati, più formati di output, nuovi tipi di dati e persino un nuovo sito di documentazione.
Tutte le modifiche possono essere visualizzate
È possibile installare la libreria come al solito utilizzando seme, ma dal momento che mentre scrivo Pandas 1.0 è ancora release candidate, dovrai specificare esplicitamente la versione:
pip install --upgrade pandas==1.0.0rc0
Attenzione: trattandosi di una major release, l'aggiornamento potrebbe rompere il vecchio codice!
A proposito, il supporto per Python 2 è stato completamente interrotto da questa versione (quale potrebbe essere una buona ragione
$ pip --version
pip 19.3.1 from /usr/local/lib/python3.7/site-packages/pip (python 3.7)
$ python --version
Python 3.7.5
Il modo più semplice per verificare la versione di Panda è questo:
>>> import pandas as pd
>>> pd.__version__
1.0.0rc0
Riepilogo automatico migliorato con DataFrame.info
La mia innovazione preferita è stata l'aggiornamento del metodo DataFrame.info. La funzione è diventata molto più leggibile, rendendo il processo di esplorazione dei dati ancora più semplice:
>>> 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
Output di tabelle in formato Markdown
Un'innovazione altrettanto piacevole è la possibilità di esportare dataframe nelle tabelle Markdown utilizzando DataFrame.to_markdown.
>>> df.to_markdown()
| | A | B | C |
|---:|----:|:--------|:------|
| 0 | 1 | goodbye | False |
| 1 | 2 | cruel | True |
| 2 | 3 | world | False |
Ciò rende molto più semplice pubblicare tabelle su siti come Medium utilizzando github gists.
Nuovi tipi per stringhe e booleani
Anche la versione Panda 1.0 ha aggiunto nuove funzionalità sperimentale tipi. La loro API potrebbe ancora cambiare, quindi usala con cautela. Ma in generale, Panda consiglia di utilizzare nuovi tipi ovunque abbia senso.
Per ora, il cast deve essere fatto 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
Nota come la colonna tipo D visualizza nuovi tipi − stringa и bool.
La caratteristica più utile del nuovo tipo di stringa è la possibilità di selezionare solo colonne di riga dai frame di dati. Ciò può rendere l'analisi dei dati di testo molto più semplice:
df.select_dtypes("string")
In precedenza, non era possibile selezionare le colonne delle righe senza specificare esplicitamente i nomi.
Puoi leggere di più sui nuovi tipi
Grazie per aver letto! L'elenco completo delle modifiche, come già accennato, può essere visualizzato
Fonte: habr.com