¿Cómo amplío la pantalla de salida para ver más columnas de un DataFrame de pandas?

624

¿Hay alguna manera de ampliar la visualización de la salida en modo interactivo o de ejecución de script?

Específicamente, estoy usando la describe()función en pandas DataFrame. Cuando DataFrametiene 5 columnas (etiquetas) de ancho, obtengo las estadísticas descriptivas que quiero. Sin embargo, si DataFrametiene más columnas, las estadísticas se suprimen y se devuelve algo como esto:

>> Index: 8 entries, count to max  
>> Data columns:  
>> x1          8  non-null values  
>> x2          8  non-null values  
>> x3          8  non-null values  
>> x4          8  non-null values  
>> x5          8  non-null values  
>> x6          8  non-null values  
>> x7          8  non-null values  

El valor "8" se da si hay 6 o 7 columnas. ¿A qué se refiere el "8"?

Ya he intentado arrastrar la ventana IDLE más grande, así como aumentar las opciones de ancho "Configurar IDLE", en vano.

Mi propósito al usar pandas describe()es evitar usar un segundo programa como Stata para hacer la manipulación e investigación de datos básicos.

remolacha
fuente

Respuestas:

890

Actualización: Pandas 0.23.4 en adelante

Esto no es necesario, los pandas detectan automáticamente el tamaño de la ventana de su terminal si lo configura pd.options.display.width = 0. (Para versiones anteriores, ver abajo).

pandas.set_printoptions(...)es obsoleto. En cambio, use pandas.set_option(optname, val), o equivalente pd.options.<opt.hierarchical.name> = val. Me gusta:

import pandas as pd
pd.set_option('display.max_rows', 500)
pd.set_option('display.max_columns', 500)
pd.set_option('display.width', 1000)

Aquí está la ayuda paraset_option :

set_option (pat, value): establece el valor de la opción especificada

Opciones Disponibles:
display. [chop_threshold, colheader_justify, column_space, date_dayfirst,
         date_yearfirst, codificación, expand_frame_repr, float_format, height,
         line_width, max_columns, max_colwidth, max_info_columns, max_info_rows,
         max_rows, max_seq_items, mpl_style, multi_sparse, notebook_repr_html,
         pprint_nest_depth, precisión, ancho]
modo. [sim_interactive, use_inf_as_null]

Parámetros
----------
pat - str / regexp que debe coincidir con una sola opción.

Nota: las coincidencias parciales son compatibles por conveniencia, pero a menos que use el
nombre completo de la opción (egxyzoption_name), su código puede romperse en el futuro
versiones si se introducen nuevas opciones con nombres similares.

valor: nuevo valor de la opción.

Devoluciones
-------
Ninguna

Plantea
------
KeyError si no existe tal opción

display.chop_threshold: [predeterminado: Ninguno] [actualmente: Ninguno]
: flotante o ninguno
        si se establece en un valor flotante, todos los valores flotantes son más pequeños que el umbral dado
        se mostrará exactamente como 0 por repr y amigos.
display.colheader_justify: [predeterminado: derecho] [actualmente: derecho]
: 'izquierda derecha'
        Controla la justificación de los encabezados de columna. utilizado por DataFrameFormatter.
display.column_space: [predeterminado: 12] [actualmente: 12] No hay descripción disponible.

display.date_dayfirst: [predeterminado: False] [actualmente: False]
: boolean
        Cuando es verdadero, imprime y analiza las fechas con el día primero, por ejemplo, 20/01/2005
display.date_yearfirst: [predeterminado: False] [actualmente: False]
: boolean
        Cuando es verdadero, imprime y analiza las fechas con el año primero, por ejemplo, 2005/01/20
display.encoding: [predeterminado: UTF-8] [actualmente: UTF-8]
: str / unicode
        El valor predeterminado es la codificación detectada de la consola.
        Especifica la codificación que se utilizará para las cadenas devueltas por to_string,
        Estas son generalmente cadenas destinadas a mostrarse en la consola.
display.expand_frame_repr: [predeterminado: True] [actualmente: True]
: boolean
        Ya sea para imprimir la repr DataFrame completa para marcos de datos anchos
        a través de varias líneas, `max_columns` todavía se respeta, pero el resultado será
        envolver varias "páginas" si su ancho excede `display.width`.
display.float_format: [predeterminado: Ninguno] [actualmente: Ninguno]
: invocable
        El invocable debe aceptar un número de coma flotante y devolver
        una cadena con el formato deseado del número. Esto es usado
        en algunos lugares como SeriesFormatter.
        Ver core.format.EngFormatter para un ejemplo.
display.height: [predeterminado: 60] [actualmente: 1000]
: En t
        Obsoleto.
        (En desuso, use `display.height` en su lugar).

display.line_width: [predeterminado: 80] [actualmente: 1000]
: En t
        Obsoleto.
        (En desuso, use `display.width` en su lugar).

display.max_columns: [predeterminado: 20] [actualmente: 500]
: En t
        max_rows y max_columns se usan en los métodos __repr __ () para decidir si
        to_string () o info () se usa para representar un objeto en una cadena. En caso
        Python / IPython se está ejecutando en una terminal, esto se puede establecer en 0 y pandas
        detectará automáticamente el ancho del terminal y cambiará a un ancho más pequeño
        formato en caso de que todas las columnas no encajen verticalmente. El cuaderno de IPython,
        IPython qtconsole, o IDLE no se ejecutan en una terminal y, por lo tanto, no es
        posible hacer la autodetección correcta.
        El valor 'Ninguno' significa ilimitado.
display.max_colwidth: [predeterminado: 50] [actualmente: 50]
: En t
        El ancho máximo en caracteres de una columna en la representación de
        Una estructura de datos de pandas. Cuando la columna se desborda, un "..."
        el marcador de posición está incrustado en la salida.
display.max_info_columns: [predeterminado: 100] [actualmente: 100]
: En t
        max_info_columns se usa en el método DataFrame.info para decidir si
        Se imprimirá la información por columna.
display.max_info_rows: [predeterminado: 1690785] [actualmente: 1690785]
: int o Ninguno
        max_info_rows es el número máximo de filas para las que un marco
        realice una comprobación nula en sus columnas al volver a reproducir en una consola.
        El valor predeterminado es 1,000,000 de filas. Entonces, si un DataFrame tiene más
        1,000,000 filas no habrá verificación nula realizada en el
        columnas y, por lo tanto, la representación tomará mucho menos tiempo para
        mostrar en una sesión interactiva. Un valor de Ninguno significa siempre
        realice una verificación nula cuando repita.
display.max_rows: [predeterminado: 60] [actualmente: 500]
: En t
        Esto establece el número máximo de filas que los pandas deben generar al imprimir
        fuera varios salida. Por ejemplo, este valor determina si repr ()
        para que un marco de datos se imprima completamente o solo un resumen repr.
        El valor 'Ninguno' significa ilimitado.
display.max_seq_items: [predeterminado: Ninguno] [actualmente: Ninguno]
: int o Ninguno

        cuando se imprime una secuencia larga, no más de `max_seq_items`
        será impreso Si se omiten elementos, se indicarán mediante la adición
        de "..." a la cadena resultante.

        Si se establece en Ninguno, el número de elementos a imprimir es ilimitado.
display.mpl_style: [predeterminado: Ninguno] [actualmente: Ninguno]
: bool

        Establecer esto como 'predeterminado' modificará los rcParams utilizados por matplotlib
        para dar a las tramas un estilo visual más agradable por defecto.
        Establecer esto en Ninguno / Falso restaura los valores a su valor inicial.
display.multi_sparse: [predeterminado: True] [actualmente: True]
: boolean
        Pantalla "MultiSdex" "sparsify" (no mostrar repetidos
        elementos en niveles externos dentro de grupos)
display.notebook_repr_html: [predeterminado: True] [actualmente: True]
: boolean
        Cuando es verdadero, el cuaderno de IPython usará representación html para
        objetos pandas (si está disponible).
display.pprint_nest_depth: [predeterminado: 3] [actualmente: 3]
: En t
        Controla el número de niveles anidados para procesar cuando se imprime bonito
display.precision: [predeterminado: 7] [actualmente: 7]
: En t
        Precisión de salida de punto flotante (número de dígitos significativos). Esto es
        solo una sugerencia
ancho de pantalla: [predeterminado: 80] [actualmente: 1000]
: En t
        Ancho de la pantalla en caracteres. En caso de que Python / IPython se esté ejecutando en
        un terminal que se puede configurar en Ninguno y los pandas detectarán automáticamente
        anchura.
        Tenga en cuenta que el cuaderno IPython, IPython qtconsole o IDLE no se ejecutan en un
        terminal y, por lo tanto, no es posible detectar correctamente el ancho.
mode.sim_interactive: [predeterminado: False] [actualmente: False]
: boolean
        Si simular el modo interactivo para fines de prueba
mode.use_inf_as_null: [predeterminado: False] [actualmente: False]
: boolean
        Verdadero significa tratar None, NaN, INF, -INF como nulo (forma antigua),
        Falso significa que Ninguno y NaN son nulos, pero INF, -INF no son nulos
        (nueva manera).
Llamada def: pd.set_option (self, * args, ** kwds)

EDITAR: información de la versión anterior, gran parte de esto ha quedado en desuso.

Como @bmu mencionó , pandas detecta automáticamente (por defecto) el tamaño del área de visualización, se usará una vista de resumen cuando un objeto repr no se ajuste a la pantalla. Usted mencionó cambiar el tamaño de la ventana IDLE, sin ningún efecto. Si lo hace, print df.describe().to_string()¿cabe en la ventana IDLE?

El tamaño del terminal está determinado por pandas.util.terminal.get_terminal_size()(en desuso y eliminado), esto devuelve una tupla que contiene el (width, height)de la pantalla. ¿La salida coincide con el tamaño de su ventana IDLE? Puede haber un problema (hubo uno antes al ejecutar un terminal en emacs).

Tenga en cuenta que es posible omitir la detección automática, pandas.set_printoptions(max_rows=200, max_columns=10)nunca cambiará a la vista de resumen si el número de filas y columnas no supera los límites establecidos.


La opción 'max_colwidth' ayuda a ver la forma no truncada de cada columna.

TruncatedColumnDisplay

Wouter Overmeire
fuente
44
display.height: obsoleto, use display.heighten su lugar ... Estoy en bucle muerto.
Frozen Flame
55
Hoy en día las opciones también se pueden establecer como asignaciones a atributos depd.options , por ejemplopd.options.display.max_rows = 999
unutbu
2
La propiedad 'display.height' está en desuso.
Greg M. Krsak
2
No funcionó para mí en Pandas 0.23.2.
devinbost
66
Es posible que desee utilizar option_context para que los cambios de opción sean locales para la cosa con la que está trabajando. Esto evita imprimir accidentalmente 400 páginas de basura en su próxima llamada .head()o lo que sea.
Mike Williamson
195

Prueba esto:

pd.set_option('display.expand_frame_repr', False)

De la documentación:

display.expand_frame_repr: boolean

Ya sea para imprimir el repr DataFrame completo para marcos de datos anchos en varias líneas, max_columns aún se respeta, pero el resultado se ajustará a través de múltiples "páginas" si su ancho excede el ancho de pantalla. [predeterminado: verdadero] [actualmente: verdadero]

Ver: http://pandas.pydata.org/pandas-docs/stable/generated/pandas.set_option.html

Robert Rose
fuente
66
Esta funciona para mí. Parece que los pandas calculan mal el ancho de salida por alguna razón y rompen las columnas innecesariamente.
zbyszek
55
Literalmente tengo que hacer esto todos los días ... ¿Hay alguna manera de establecer esto globalmente en algún lugar?
citynorman
1
@citynorman ver pandas\core\config_init.pypara configurarlo permanentemente.
Jarad
106

Si desea establecer opciones temporalmente para mostrar un DataFrame grande, puede usar option_context :

with pd.option_context('display.max_rows', None, 'display.max_columns', None):
    print (df)

Los valores de las opciones se restauran automáticamente cuando sale del withbloque.

jezrael
fuente
3
Para no establecer límites, Nonese puede utilizar (en lugar de 999, etc.).
Eric O Lebigot
55
with pd.option_context('display.max_rows', None, 'display.max_columns', None): print(energy)no funcionó No cambió la cantidad de columnas que quería ver. Sin embargo, la solución de Wouter Overmeiere funcionó.
Aziz Javed
Pero hay una diferencia, necesita algún número como -1o 500, no ninguno.
Israel
2
Usando -1 bloqueos, y 500 tampoco hizo nada
Aziz Javed
1
+1 por sugerir un administrador de contexto, pero -1 por el max_rowsvalor;). Establecer 'display.max_rows'-1 parece estropear el formato por completo (para mis datos no se bloquea, pero ahora imprime ciertas filas varias veces).
bluenote10
88

Solo usar estas 3 líneas funcionó para mí:

pd.set_option('display.max_columns', None)  
pd.set_option('display.expand_frame_repr', False)
pd.set_option('max_colwidth', -1)

Anaconda / Python 3.6.5 / pandas: 0.23.0 / Visual Studio Code 1.26

Arispen
fuente
54

Establezca el ancho máximo de la columna con:

pd.set_option('max_colwidth', 800)

Esta declaración particular establece el ancho máximo a 800 px, por columna.

pX0r
fuente
2
Desplazándose hacia abajo en orden de voto descendente, esta es la primera respuesta que me funcionó para que los pandas no truncaran la salida de texto sin formato de DataFrames. (pandas 0.22, iTerm2 3.0.13, OS X 10.12).
Peter Leimbigler
2
Este es el único que funcionó para mí para Pandas 0.23.2.
devinbost
1
¿Cómo es que no tuvo que especificarlo como display.max_colwidth? Así es como aparece en la documentación. Estoy de acuerdo en que solo max_colwidthfunciona y es más corto de escribir, pero me sorprendió.
cmo
26

Puede usar print df.describe().to_string()para forzarlo a mostrar toda la tabla. (Puede usarlo to_string()así para cualquier DataFrame. El resultado describees solo un DataFrame).

El 8 es el número de filas en el DataFrame que contiene la "descripción" (porque describecalcula 8 estadísticas, min, max, mean, etc.).

BrenBarn
fuente
26

Puede ajustar las opciones de impresión de pandas con set_printoptions.

In [3]: df.describe()
Out[3]: 
<class 'pandas.core.frame.DataFrame'>
Index: 8 entries, count to max
Data columns:
x1    8  non-null values
x2    8  non-null values
x3    8  non-null values
x4    8  non-null values
x5    8  non-null values
x6    8  non-null values
x7    8  non-null values
dtypes: float64(7)

In [4]: pd.set_printoptions(precision=2)

In [5]: df.describe()
Out[5]: 
            x1       x2       x3       x4       x5       x6       x7
count      8.0      8.0      8.0      8.0      8.0      8.0      8.0
mean   69024.5  69025.5  69026.5  69027.5  69028.5  69029.5  69030.5
std       17.1     17.1     17.1     17.1     17.1     17.1     17.1
min    69000.0  69001.0  69002.0  69003.0  69004.0  69005.0  69006.0
25%    69012.2  69013.2  69014.2  69015.2  69016.2  69017.2  69018.2
50%    69024.5  69025.5  69026.5  69027.5  69028.5  69029.5  69030.5
75%    69036.8  69037.8  69038.8  69039.8  69040.8  69041.8  69042.8
max    69049.0  69050.0  69051.0  69052.0  69053.0  69054.0  69055.0

Sin embargo, esto no funcionará en todos los casos, ya que los pandas detectan el ancho de su consola y solo se usarán to_stringsi la salida cabe en la consola (vea la cadena de documentación de set_printoptions). En este caso, puede llamar explícitamente to_stringcomo respondió BrenBarn .

Actualizar

Con la versión 0.10, la forma en que se imprimen los marcos de datos anchos cambió :

In [3]: df.describe()
Out[3]: 
                 x1            x2            x3            x4            x5  \
count      8.000000      8.000000      8.000000      8.000000      8.000000   
mean   59832.361578  27356.711336  49317.281222  51214.837838  51254.839690   
std    22600.723536  26867.192716  28071.737509  21012.422793  33831.515761   
min    31906.695474   1648.359160     56.378115  16278.322271     43.745574   
25%    45264.625201  12799.540572  41429.628749  40374.273582  29789.643875   
50%    56340.214856  18666.456293  51995.661512  54894.562656  47667.684422   
75%    75587.003417  31375.610322  61069.190523  67811.893435  76014.884048   
max    98136.474782  84544.484627  91743.983895  75154.587156  99012.695717   

                 x6            x7  
count      8.000000      8.000000  
mean   41863.000717  33950.235126  
std    38709.468281  29075.745673  
min     3590.990740   1833.464154  
25%    15145.759625   6879.523949  
50%    22139.243042  33706.029946  
75%    72038.983496  51449.893980  
max    98601.190488  83309.051963  

Además, la API para configurar las opciones de pandas cambió:

In [4]: pd.set_option('display.precision', 2)

In [5]: df.describe()
Out[5]: 
            x1       x2       x3       x4       x5       x6       x7
count      8.0      8.0      8.0      8.0      8.0      8.0      8.0
mean   59832.4  27356.7  49317.3  51214.8  51254.8  41863.0  33950.2
std    22600.7  26867.2  28071.7  21012.4  33831.5  38709.5  29075.7
min    31906.7   1648.4     56.4  16278.3     43.7   3591.0   1833.5
25%    45264.6  12799.5  41429.6  40374.3  29789.6  15145.8   6879.5
50%    56340.2  18666.5  51995.7  54894.6  47667.7  22139.2  33706.0
75%    75587.0  31375.6  61069.2  67811.9  76014.9  72039.0  51449.9
max    98136.5  84544.5  91744.0  75154.6  99012.7  98601.2  83309.1
bmu
fuente
Prefiero usar el método max_columns mencionado por lodagro, pero me alegra que hayas mencionado la palabra clave de precisión, ya que eso ayudará a limpiar las estadísticas que se muestran. ¡Gracias!
remolacha
22

Puede configurar la pantalla de salida para que coincida con el ancho actual de su terminal:

pd.set_option('display.width', pd.util.terminal.get_terminal_size()[0])
Wilfred Hughes
fuente
66
@ wouter-overmeire dice que los pandas hacen esto automáticamente , pero ese no parece ser el caso, al menos no con 0.18.0. Sin embargo, si lo usa pd.set_option('display.width', None)en una terminal, "los pandas detectarán automáticamente el ancho correctamente" .
Matthias Fripp
¡Exactamente! No lo hace por defecto. Al configurarlo en Ninguno, simplemente ignora el ancho en absoluto. ¿Tal vez es un error en Pandas o tal vez tiene que ver con la terminal de gnome ...? Gracias Wilfred Hughes!
danger89
3
AttributeError: el módulo 'pandas.util' no tiene atributo 'terminal'
Bhishan Poudel
1
@BhishanPoudel Puedes hacer esto en su lugar:pd.options.display.width = None
SebMa
1
@BhishanPoudel Esta respuesta tiene algunos años y me encontré con el mismo problema que tú. Al momento de escribir esto, usando la versión 0.23.1 de pandas, el módulo ahora espd.io.formats.terminal.get_terminal_size()
Ajay
13

De acuerdo con los documentos para v0.18.0 , si está ejecutando en un terminal (es decir, no en un portátil iPython, qtconsole o IDLE), es un 2-liner para que Pandas detecte automáticamente el ancho de su pantalla y se adapte sobre la marcha con cuántos columnas que muestra:

pd.set_option('display.large_repr', 'truncate')
pd.set_option('display.max_columns', 0)
hamx0r
fuente
1
Esto funcionó para mí, gracias! Estoy usando Pandas 0.22.0 (más reciente a partir del 8 de febrero de 2018) usando la aplicación Terminal integrada en OS X 10.11.6
Greg Sadetsky
8

Parece que todas las respuestas anteriores resuelven el problema. Un punto más: en lugar de pd.set_option('option_name'), puede usar el (auto-complete-able)

pd.options.display.width = None

Ver Pandas doc: Opciones y configuraciones:

Las opciones tienen un "estilo punteado" completo, sin distinción entre mayúsculas y minúsculas (p display.max_rows. Ej .). Puede obtener / establecer opciones directamente como atributos del atributo de nivel superior options:

In [1]: import pandas as pd

In [2]: pd.options.display.max_rows
Out[2]: 15

In [3]: pd.options.display.max_rows = 999

In [4]: pd.options.display.max_rows
Out[4]: 999

[...]

para los max_...params:

max_rowsy max_columnsse usan en __repr__()métodos para decidir si to_string()o info()se usa para representar un objeto en una cadena. En caso de que Python / IPython se ejecute en un terminal, esto se puede establecer en 0 y los pandas detectarán automáticamente el ancho del terminal y cambiarán a un formato más pequeño en caso de que todas las columnas no encajen verticalmente. El portátil IPython, IPython qtconsole o IDLE no se ejecutan en un terminal y, por lo tanto, no es posible realizar la detección automática correcta. ' None' valor significa ilimitado. [énfasis no en original]

para el widthparam:

Ancho de la pantalla en caracteres. En caso de que python / IPython se ejecute en una terminal, esto se puede configurar Noney los pandas detectarán automáticamente el ancho correctamente. Tenga en cuenta que el portátil IPython, IPython qtconsole o IDLE no se ejecutan en un terminal y, por lo tanto, no es posible detectar correctamente el ancho.

serv-inc
fuente
5
import pandas as pd
pd.set_option('display.max_columns', 100)
pd.set_option('display.width', 1000)

SentenceA = "William likes Piano and Piano likes William"
SentenceB = "Sara likes Guitar"
SentenceC = "Mamoosh likes Piano"
SentenceD = "William is a CS Student"
SentenceE = "Sara is kind"
SentenceF = "Mamoosh is kind"


bowA = SentenceA.split(" ")
bowB = SentenceB.split(" ")
bowC = SentenceC.split(" ")
bowD = SentenceD.split(" ")
bowE = SentenceE.split(" ")
bowF = SentenceF.split(" ")

# Creating a set consisted of all words

wordSet = set(bowA).union(set(bowB)).union(set(bowC)).union(set(bowD)).union(set(bowE)).union(set(bowF))
print("Set of all words is: ", wordSet)

# Initiating dictionary with 0 value for all BOWs

wordDictA = dict.fromkeys(wordSet, 0)
wordDictB = dict.fromkeys(wordSet, 0)
wordDictC = dict.fromkeys(wordSet, 0)
wordDictD = dict.fromkeys(wordSet, 0)
wordDictE = dict.fromkeys(wordSet, 0)
wordDictF = dict.fromkeys(wordSet, 0)

for word in bowA:
    wordDictA[word] += 1
for word in bowB:
    wordDictB[word] += 1
for word in bowC:
    wordDictC[word] += 1
for word in bowD:
    wordDictD[word] += 1
for word in bowE:
    wordDictE[word] += 1
for word in bowF:
    wordDictF[word] += 1

# Printing Term frequency

print("SentenceA TF: ", wordDictA)
print("SentenceB TF: ", wordDictB)
print("SentenceC TF: ", wordDictC)
print("SentenceD TF: ", wordDictD)
print("SentenceE TF: ", wordDictE)
print("SentenceF TF: ", wordDictF)

print(pd.DataFrame([wordDictA, wordDictB, wordDictB, wordDictC, wordDictD, wordDictE, wordDictF]))

Salida:

   CS  Guitar  Mamoosh  Piano  Sara  Student  William  a  and  is  kind  likes
0   0       0        0      2     0        0        2  0    1   0     0      2
1   0       1        0      0     1        0        0  0    0   0     0      1
2   0       1        0      0     1        0        0  0    0   0     0      1
3   0       0        1      1     0        0        0  0    0   0     0      1
4   1       0        0      0     0        1        1  1    0   1     0      0
5   0       0        0      0     1        0        0  0    0   1     1      0
6   0       0        1      0     0        0        0  0    0   1     1      0
William Pourmajidi
fuente
Solo necesita estos dos: (Verifique el ejemplo anterior) importar pandas como pd pd.set_option ('display.max_columns', 100) pd.set_option ('display.width', 1000)
William Pourmajidi
4

Usé esta configuración cuando la escala de datos es alta.

# environment settings: 
pd.set_option('display.max_column',None)
pd.set_option('display.max_rows',None)
pd.set_option('display.max_seq_items',None)
pd.set_option('display.max_colwidth', 500)
pd.set_option('expand_frame_repr', True)

Puedes consultar la documentación aquí

debaonline4u
fuente
4

La siguiente línea es suficiente para mostrar todas las columnas del marco de datos. pd.set_option('display.max_columns', None)

zeeshan
fuente
1
Bienvenido a SO! Cuando publique una nueva respuesta a una pregunta y haya algunas respuestas más, intente mostrar las ventajas. Todavía hay una respuesta pd.set_option('display.max_columns', 0)¿Cuáles son los beneficios de los suyos?
David García Bodego
3

Si no desea meterse con sus opciones de visualización y solo desea ver esta lista particular de columnas sin expandir cada marco de datos que ve, puede intentar:

df.columns.values
Son también
fuente
2

También puedes probar en un bucle:

for col in df.columns: 
    print(col) 
la vida es bella
fuente
2

Simplemente puede hacer los siguientes pasos,

  • Puede cambiar las opciones para la función pandas max_columns de la siguiente manera

    import pandas as pd
    pd.options.display.max_columns = 10

    (esto permite que se muestren 10 columnas, puede cambiar esto según lo necesite)

  • De este modo, puede cambiar el número de filas que necesita para mostrar de la siguiente manera (si también necesita cambiar las filas máximas)

    pd.options.display.max_rows = 999

    (esto permite imprimir 999 filas a la vez)

Consulte el documento para cambiar las diferentes opciones / configuraciones de los pandas

Amila Viraj
fuente