Ce que Pandas 1.0 nous a apporté

Ce que Pandas 1.0 nous a apporté

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 ici, 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.0rc0

Attention : 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 mise à jour - 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.5

Le moyen le plus simple de vérifier la version de Pandas est le suivant :

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

Ré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+ bytes

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

Ce que Pandas 1.0 nous a apporté

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

Remarquez comment la colonne TypeD affiche de nouveaux types - un magnifique и 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 ici.

Merci pour la lecture! La liste complète des changements, comme déjà mentionné, peut être consultée ici.

Source: habr.com

Ajouter un commentaire