
Le 9 janvier, Pandas 1.0.0rc est sorti. La version précédente de la bibliothèque est la 0.25.
La première version majeure contient de nombreuses nouvelles fonctionnalités intéressantes, notamment une synthèse automatique améliorée des trames de données, davantage de formats de sortie, de nouveaux types de données et même un nouveau site de documentation.
Tous les changements peuvent être consultés , dans l'article nous nous limiterons à un petit tour d'horizon moins technique des choses les plus importantes.
Vous pouvez installer la bibliothèque comme d'habitude en utilisant pépin, mais comme au moment de la rédaction de cet article, Pandas 1.0 est toujours release candidate, vous devrez spécifier explicitement la version :
pip install --upgrade pandas==1.0.0rc0Attention : s'agissant d'une version majeure, la mise à jour risque de casser l'ancien code !
À propos, le support de Python 2 a été complètement interrompu depuis cette version (quelle pourrait être une bonne raison - environ. traduction). Pandas 1.0 nécessite au moins Python 3.6+, donc si vous n'êtes pas sûr, vérifiez lequel vous avez installé :
$ pip --version
pip 19.3.1 from /usr/local/lib/python3.7/site-packages/pip (python 3.7)
$ python --version
Python 3.7.5Le moyen le plus simple de vérifier la version de Pandas est le suivant :
>>> import pandas as pd
>>> pd.__version__
1.0.0rc0Résumé automatique amélioré avec DataFrame.info
Mon innovation préférée a été la mise à jour de la méthode DataFrame.info. La fonction est devenue beaucoup plus lisible, rendant le processus d'exploration des données encore plus facile :
>>> 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+ bytesSortie des tableaux au format Markdown
Une innovation tout aussi agréable est la possibilité d'exporter des dataframes vers des tables Markdown à l'aide de DataFrame.to_markdown.
>>> df.to_markdown()
| | A | B | C |
|---:|----:|:--------|:------|
| 0 | 1 | goodbye | False |
| 1 | 2 | cruel | True |
| 2 | 3 | world | False |Cela rend beaucoup plus facile la publication de tableaux sur des sites comme Medium en utilisant les Gists de GitHub.

Nouveaux types pour les chaînes et les booléens
La version Pandas 1.0 a également ajouté de nouveaux expérimental les types. Leur API peut encore changer, alors utilisez-la avec prudence. Mais en général, Pandas recommande d'utiliser de nouveaux types partout où cela a du sens.
Pour l'instant, le casting doit être fait explicitement :
>>> 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+ bytesRemarquez comment la colonne TypeD affiche de nouveaux types - string и bool.
La fonctionnalité la plus utile du nouveau type de chaîne est la possibilité de sélectionner uniquement les colonnes de lignes à partir de trames de données. Cela peut rendre l'analyse des données texte beaucoup plus facile :
df.select_dtypes("string")Auparavant, les colonnes de lignes ne pouvaient pas être sélectionnées sans spécifier explicitement des noms.
Vous pouvez en savoir plus sur les nouveaux types .
Merci pour la lecture! La liste complète des changements, comme déjà mentionné, peut être consultée .
Source: habr.com
