Quiero mostrar todas las columnas en un marco de datos en un Jupyter Notebook. Jupyter muestra algunas de las columnas y agrega puntos a las últimas columnas como en la siguiente imagen:

Juputer Screenshot

¿Cómo puedo mostrar todas las columnas?

85
Michail N 30 oct. 2017 a las 21:34

4 respuestas

La mejor respuesta

Pruebe la configuración de visualización max_columns de la siguiente manera:

import pandas as pd
from IPython.display import display

df = pd.read_csv("some_data.csv")
pd.options.display.max_columns = None
display(df)

O

pd.set_option('display.max_columns', None)

Editar: Pandas 0.11.0 hacia atrás

Esto está en desuso, pero en las versiones de Pandas anteriores a 0.11.0, la configuración max_columns se especifica de la siguiente manera:

pd.set_printoptions(max_columns=500)
116
Isma 17 sep. 2019 a las 13:23

Sé que esta pregunta es un poco vieja, pero lo siguiente funcionó para mí en un Jupyter Notebook con pandas 0.22.0 y Python 3:

import pandas as pd
pd.set_option('display.max_columns', <number of columns>)

También puede hacer lo mismo para las filas:

pd.set_option('display.max_rows', <number of rows>)

Esto ahorra la importación de IPython, y hay más opciones en la documentación de pandas.set_option: https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.set_option.html

21
Hannah 12 feb. 2019 a las 17:55

Recomiendo configurar las opciones de visualización dentro de un administrador de contexto para que solo afecte a un único resultado. Si también desea imprimir una versión html "bonita", definiría una función y mostraría el marco de datos df usando force_show_all(df):

from IPython.core.display import display, HTML

def force_show_all(df):
    with pd.option_context('display.max_rows', None, 'display.max_columns', None, 'display.width', None):
        display(HTML(df.to_html()))

Como otros han mencionado, tenga cuidado de llamar solo a esto en un marco de datos de tamaño razonable.

0
Zephaniah Grunschlag 22 ene. 2020 a las 18:19

Python 3.x para marcos de datos grandes (pero no demasiado grandes)

Tal vez porque tengo una versión anterior de pandas, pero en el cuaderno Jupyter esto funciona para mí

import pandas as pd
from IPython.core.display import HTML

df=pd.read_pickle('Data1')
display(HTML(df.to_html()))
8
rsc05 30 may. 2019 a las 11:03