logo

Comment imprimer un Pandas DataFrame entier en Python ?

La visualisation des données est la technique utilisée pour fournir des informations sur les données à l'aide d'indices visuels tels que des graphiques, des diagrammes, des cartes et bien d'autres. Ceci est utile car cela permet une compréhension intuitive et facile des grandes quantités de données et permet ainsi de prendre de meilleures décisions les concernant. Lorsque nous utilisons un grand nombre d'impressions d'un ensemble de données, celui-ci est tronqué. Dans cet article, nous allons voir comment imprimer l'intégralité Cadre de données Pandas ou Série sans troncature.

Imprimer un DataFrame Pandas entier en Python

Par défaut, le bloc de données complet n'est pas imprimé si la longueur dépasse la longueur par défaut, la sortie est tronquée comme indiqué ci-dessous :

Python3






import> numpy as np> from> sklearn.datasets>import> load_iris> import> pandas as pd> # Loading irirs dataset> data>=> load_iris()> df>=> pd.DataFrame(data.data,> >columns>=> data.feature_names)> display(df)>

>

>

Sortir:

Il y a 4 méthodes pour imprimer l'intégralité du Dataframe pandas :

  • Utiliser la méthode to_string()
  • Utilisez la méthode pd.option_context()
  • Utilisez la méthode pd.set_options()
  • Utilisez la méthode pd.to_markdown()

Méthode 1 : utiliser to_string()

Bien que cette méthode soit la plus simple de toutes, elle n'est pas recommandée pour les ensembles de données très volumineux (de l'ordre de millions) car elle convertit l'intégralité du bloc de données en un objet chaîne, mais fonctionne très bien pour les blocs de données d'une taille de l'ordre de milliers.

Syntaxe: DataFrame.to_string(buf=Aucun, columns=Aucun, col_space=Aucun, header=True, index=True, na_rep='NaN', formatters=Aucun, float_format=Aucun, index_names=True, justifier=Aucun, max_rows=Aucun, max_cols=Aucun, show_dimensions=False, decimal='.', line_width=Aucun)

Exemple: Dans cet exemple, nous utilisons leload_iris>fonction de scikit-learn pour charger l'ensemble de données Iris, puis crée un DataFrame pandas (df>) contenant les fonctionnalités de l'ensemble de données, et enfin, convertit l'intégralité du DataFrame en une représentation sous forme de chaîne à l'aide to_string()> et l'affiche.

Python3




import> numpy as np> from> sklearn.datasets>import> load_iris> import> pandas as pd> data>=> load_iris()> df>=> pd.DataFrame(data.data,> >columns>=> data.feature_names)> # Convert the whole dataframe as a string and display> display(df.to_string())>

java scan.chaîne suivante
>

>

Sortir:

Méthode 2 : utilisation de pd.option_context()

Les pandas permettent de modifier les paramètres via le option_context() méthode et set_option() méthodes. Les deux méthodes sont identiques à une différence près : plus tard, on modifie les paramètres de manière permanente et la première ne le fait que dans le cadre du gestionnaire de contexte.

Syntaxe : pandas.option_context(*args)

Exemple: Dans cet exemple, nous utilisons l'ensemble de données Iris de scikit-learn, crée un DataFrame pandas (df>) avec les options de formatage spécifiées et imprime le DataFrame dans un contexte temporaire où les paramètres d'affichage, tels que le nombre maximal de lignes, de colonnes et la précision, sont modifiés pour la portée locale uniquement.

Python3




import> numpy as np> from> sklearn.datasets>import> load_iris> import> pandas as pd> data>=> load_iris()> df>=> pd.DataFrame(data.data,> >columns>=> data.feature_names)> # The scope of these changes made to> # pandas settings are local to with statement.> with pd.option_context(>'display.max_rows'>,>None>,> >'display.max_columns'>,>None>,> >'display.precision'>,>3>,> >):> >print>(df)>

>

haricot java

>

Sortir:

Méthode 3 : Utilisation de pd.set_option()

Cette méthode est similaire à la méthode pd.option_context() et prend les mêmes paramètres que ceux évoqués pour la méthode 2, mais contrairement à pd.option_context(), elle la portée et l'effet s'appliquent à l'ensemble du script, c'est-à-dire que tous les paramètres des trames de données sont modifiés de manière permanente

Pour réinitialiser explicitement la valeur, utilisez pd.reset_option('tous') La méthode doit être utilisée pour annuler les modifications.

Syntaxe : pandas.set_option(pat, valeur)

Exemple: Ce code modifie les options d'affichage globales des pandas pour afficher toutes les lignes et colonnes avec une largeur et une précision illimitées pour le DataFrame donné (df>). Il réinitialise ensuite les options à leurs valeurs par défaut et affiche à nouveau le DataFrame, illustrant la restauration des paramètres par défaut.

Python3




import> numpy as np> from> sklearn.datasets>import> load_iris> import> pandas as pd> data>=> load_iris()> df>=> pd.DataFrame(data.data,> >columns>=> data.feature_names)> # Permanently changes the pandas settings> pd.set_option(>'display.max_rows'>,>None>)> pd.set_option(>'display.max_columns'>,>None>)> pd.set_option(>'display.width'>,>None>)> pd.set_option(>'display.max_colwidth'>,>->1>)> # All dataframes hereafter reflect these changes.> display(df)> print>(>'**RESET_OPTIONS**'>)> # Resets the options> pd.reset_option(>'all'>)> display(df)>

>

>

Sortir:

Méthode 4 : utilisation de to_markdown()

Cette méthode est similaire à la méthode to_string() car elle convertit également le bloc de données en un objet chaîne et y ajoute également un style et un formatage.

Syntaxe : DataFrame.to_markdown(buf=Aucun, mode=’wt’, index=True,, **kwargs)

Exemple: Ce code utilise l'ensemble de données Iris de scikit-learn pour créer un DataFrame pandas (df>), puis il imprime une représentation Markdown formatée du DataFrame à l'aide du to_markdown()>méthode .

Python3


jointure à gauche vs jointure à droite



import> numpy as np> from> sklearn.datasets>import> load_iris> import> pandas as pd> data>=> load_iris()> df>=> pd.DataFrame(data.data,> >columns>=>data.feature_names)> # Converts the dataframe into str object with formatting> print>(df.to_markdown())>

>

>

Sortir: