Mostrar todas as colunas de um Pandas DataFrame

Manav Narula 10 agosto 2021
  1. Utilizar uma Lista para mostrar todas as colunas de um Pandas DataFrame
  2. Utilize um NumPy Array para mostrar todas as colunas de um Pandas DataFrame
Mostrar todas as colunas de um Pandas DataFrame

Em exemplos da vida real, encontramos grandes conjuntos de dados contendo centenas e milhares de filas e colunas. Para trabalharmos com tais grandes pedaços de dados, precisamos de estar familiarizados com as linhas, colunas, e tipo de dados. Em muitos casos, precisamos também de armazenar os nomes das colunas para facilitar a extracção de elementos mais tarde ou para outra utilização.

Em situações normais, normalmente utilizamos dataframe.columns para extrair os nomes das colunas de um DataFrame. Isto pode funcionar para pequenos conjuntos de dados, mas se estivermos a manusear um DataFrame com mais de uma centena de colunas, este método pode revelar-se não tão eficiente.

O exemplo seguinte ilustrará o problema com dataframe.columns:

import pandas as pd
import numpy as np

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

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

Resultado:

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

No exemplo acima, geramos um DataFrame vazio com 150 colunas de 0-149, e como se vê na saída, não somos capazes de ver todas as colunas. Apenas podemos ver os primeiros e últimos nomes de colunas, e a saída não é uma lista ou Series que possamos armazenar e aceder facilmente para utilização posterior.

Há uma solução simples para o problema acima; podemos simplesmente converter o resultado de dataframe.columns para uma lista ou um array NumPy.

Utilizar uma Lista para mostrar todas as colunas de um Pandas DataFrame

Para isso podemos utilizar dois métodos, tolist() ou list(). Ambas estas funções convertem os nomes das colunas numa lista e dão o mesmo resultado.

Exemplo utilizando tolist():

import pandas as pd
import numpy as np

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

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

Resultado:

[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

Exemplo utilizando list():

import pandas as pd
import numpy as np

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

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

Resultado:

[
    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

Utilize um NumPy Array para mostrar todas as colunas de um Pandas DataFrame

Podemos utilizar a função values() para converter o resultado de dataframe.columns para um array NumPy.

Exemplo:

import pandas as pd
import numpy as np

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

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

Resultado:

[  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
Manav Narula avatar Manav Narula avatar

Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.

LinkedIn

Artigo relacionado - Pandas DataFrame