Afficher toutes les colonnes d'un DataFrame de Pandas

  1. Utiliser une liste pour afficher toutes les colonnes d’un Pandas DataFrame
  2. Utiliser un tableau à bosses pour afficher toutes les colonnes d’un Pandas DataFrame

Dans des exemples concrets, nous rencontrons de grands ensembles de données contenant des centaines et des milliers de lignes et de colonnes. Pour travailler sur de telles quantités de données, nous devons nous familiariser avec les lignes, les colonnes et le type de données. Dans de nombreux cas, nous devons également stocker les noms des colonnes pour faciliter l’extraction ultérieure d’éléments ou pour une autre utilisation.

Dans des situations normales, nous utilisons généralement le fichier dataframe.columns pour extraire les noms des colonnes d’un DataFrame. Cela peut fonctionner pour de petits ensembles de données, mais si nous traitons un DataFrame avec plus d’une centaine de colonnes, cette méthode peut s’avérer moins efficace.

L’exemple suivant illustrera le problème avec dataframe.columns :

import pandas as pd
import numpy as np

df = pd.DataFrame(columns = np.arange(150))

print(df.columns)
type(df.columns)

Production :

Int64Index([  0,   1,   2,   3,   4,   5,   6,   7,   8,   9,
            ...
            140, 141, 142, 143, 144, 145, 146, 147, 148, 149],
           dtype='int64', length=150)
pandas.core.indexes.numeric.Int64Index

Dans l’exemple ci-dessus, nous générons une DataFrame vide avec 150 colonnes de 0 à 149, et comme on peut le voir dans la sortie, nous ne sommes pas en mesure de visualiser toutes les colonnes. Nous ne pouvons voir que les premiers et derniers noms de colonnes, et la sortie n’est pas une liste ou une Series que nous pouvons stocker et à laquelle nous pouvons accéder facilement pour une utilisation ultérieure.

Il existe une solution simple au problème ci-dessus ; nous pouvons simplement convertir le résultat de dataframe.columns en une liste ou un tableau Numpy.

Utiliser une liste pour afficher toutes les colonnes d’un Pandas DataFrame

Pour cela, nous pouvons utiliser deux méthodes, tolist() ou list(). Ces deux fonctions convertissent les noms de colonnes en une liste et donnent le même résultat.

Exemple d’utilisation de tolist() :

import pandas as pd
import numpy as np

df = pd.DataFrame(columns = np.arange(150))

print(df.columns.tolist())
type(df.columns.tolist())

Production :

[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149]
list

Exemple utilisant list() :

import pandas as pd
import numpy as np

df = pd.DataFrame(columns = np.arange(150))

print(list(df.columns))
type(list(df.columns))

Production :

[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149]
list

Utiliser un tableau à bosses pour afficher toutes les colonnes d’un Pandas DataFrame

Nous pouvons utiliser la fonction values() pour convertir le résultat de dataframe.columns en un tableau Numpy.

Exemple :

import pandas as pd
import numpy as np

df = pd.DataFrame(columns = np.arange(150))

print(df.columns.values)
type(df.columns.values)

Production :

[  0   1   2   3   4   5   6   7   8   9  10  11  12  13  14  15  16  17
  18  19  20  21  22  23  24  25  26  27  28  29  30  31  32  33  34  35
  36  37  38  39  40  41  42  43  44  45  46  47  48  49  50  51  52  53
  54  55  56  57  58  59  60  61  62  63  64  65  66  67  68  69  70  71
  72  73  74  75  76  77  78  79  80  81  82  83  84  85  86  87  88  89
  90  91  92  93  94  95  96  97  98  99 100 101 102 103 104 105 106 107
 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125
 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143
 144 145 146 147 148 149]
numpy.ndarray

Article connexe - Pandas DataFrame

  • Sélectionner plusieurs colonnes dans Pandas DataFrame
  • Prenez des tranches de colonnes de DataFrame dans Pandas