Я хочу показать все столбцы в фрейме данных в Jupyter Notebook. Jupyter показывает некоторые столбцы и добавляет точки к последним столбцам, как на следующем рисунке:
Как я могу отобразить все столбцы?
Ответы:
Попробуйте установить параметр display max_columns следующим образом:
import pandas as pd
from IPython.display import display
df = pd.read_csv("some_data.csv")
pd.options.display.max_columns = None
display(df)
Или
pd.set_option('display.max_columns', None)
Изменить: Pandas 0.11.0 назад
Это устарело, но в версиях Pandas старше 0.11.0 этот max_columns
параметр указывается следующим образом:
pd.set_printoptions(max_columns=500)
with pd.option_context("display.max_rows", 10, "display.max_columns", 5):
(см. Получение и настройка параметров ).
Я знаю, что этот вопрос немного устарел, но в Jupyter Notebook с pandas 0.22.0 и Python 3 у меня работало следующее:
import pandas as pd
pd.set_option('display.max_columns', <number of columns>)
То же самое можно сделать и для строк:
pd.set_option('display.max_rows', <number of rows>)
Это экономит импорт IPython, и в документации pandas.set_option есть больше опций: https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.set_option.html
Может быть, потому что у меня более старая версия панд, но на ноутбуке Jupyter это работает для меня
import pandas as pd
from IPython.core.display import HTML
df=pd.read_pickle('Data1')
display(HTML(df.to_html()))
Я рекомендую установить параметры отображения внутри диспетчера контекста, чтобы он влиял только на один вывод. Если вы также хотите распечатать "красивую" html-версию, я бы определил функцию и отобразил фрейм данных, df
используя 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()))
Как уже упоминали другие, будьте осторожны, вызывая это только для кадра данных разумного размера.
вы можете использовать pandas.set_option (), для столбца вы можете указать любой из этих параметров
pd.set_option("display.max_rows", 200)
pd.set_option("display.max_columns", 100)
pd.set_option("display.max_colwidth", 200)
Для полного столбца печати вы можете использовать вот так
import pandas as pd
pd.set_option('display.max_colwidth', -1)
print(words.head())
Если вы хотите показать все строки, указанные ниже
pd.options.display.max_rows = None
Если вы хотите показать все столбцы, указанные ниже
pd.options.display.max_columns = None