Mostrar todas las columnas de un Pandas DataFrame

Manav Narula 30 enero 2023
  1. Usar una lista para mostrar todas las columnas de un Pandas DataFrame
  2. Usar un array de números para mostrar todas las columnas de un Pandas DataFrame
Mostrar todas las columnas de un Pandas DataFrame

En ejemplos de la vida real, encontramos grandes conjuntos de datos que contienen cientos y miles de filas y columnas. Para trabajar con estos grandes trozos de datos, necesitamos estar familiarizados con las filas, columnas y tipo de datos. En muchos casos, también necesitamos almacenar los nombres de las columnas para facilitar la extracción de elementos más adelante o para otros usos.

En situaciones normales, solemos utilizar dataframe.columns para extraer los nombres de las columnas de un DataFrame. Esto puede funcionar para pequeños conjuntos de datos, pero si estamos manejando un DataFrame con más de cien columnas, este método puede resultar no ser tan eficiente.

El siguiente ejemplo ilustrará el problema con 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

En el ejemplo anterior, generamos un DataFrame vacío con 150 columnas de 0-149, y como se ve en la salida, no podemos ver todas las columnas. Sólo podemos ver los primeros y los últimos nombres de las columnas, y la salida no es una lista o Series que podamos almacenar y acceder fácilmente para su uso posterior.

Hay una solución sencilla al problema anterior; podemos simplemente convertir el resultado de dataframe.columns en una lista o un array NumPy.

Usar una lista para mostrar todas las columnas de un Pandas DataFrame

Para ello podemos usar dos métodos, tolist() o list(). Ambas funciones convierten los nombres de las columnas en una lista y dan la misma salida.

Ejemplo usando 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

Ejemplo usando 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

Usar un array de números para mostrar todas las columnas de un Pandas DataFrame

Podemos usar la función values() para convertir el resultado de dataframe.columns en un array NumPy.

Ejemplo:

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

Artículo relacionado - Pandas DataFrame