Альтернатива pd.set_option()
. Создайте кастом l oop. L oop через фрейм данных в наборах по 60 штук или вне зависимости от того, какие максимальные строки у вас для печати. Этот подход не исключает заголовки столбцов для каждой итерации печати 60 строк, но это была забавная «альтернатива» коду и, казалось бы, жизнеспособное решение для печати большого количества строк> 100 000 или около того. Я создал случайный кадр данных с плавающей запятой длиной 100 000 строк и потребовал <1 se c для запуска. </p>
import numpy as np
import pandas as pd
import math
nrows=100000
df=pd.DataFrame(np.random.rand(nrows,4), columns=list('ABCD'))
i=0
for x in range(0,int(math.ceil(nrows/60))):
print(df.iloc[i:i+60, :].tail(60))
i+=60
Преимущество моего подхода зависит от того, сколько строк вы хотите показать. Я только что попробовал максимальное количество строк с помощью метода pd.set_options на 100 000 строк, и при простом вызове df
(вместо print(df)
) моя страница перестала отвечать. Это потому, что он создает такую длинную страницу (полоса прокрутки отсутствует), но когда вы print
получаете полосу прокрутки, это делает ее менее интенсивной и лучше практикует IMO для печати большого количества строк.
Ладно, так что звоните df
, почему бы мне просто не перейти к максимальному пределу с помощью pd.set_option('display.max_rows', None)
и сделать print(df)
. Разве это не сработает?
Хорошо, это сработало для 10000 строк, но я получил эту ошибку при выполнении 100000 строк.
IOPub data rate exceeded.
The notebook server will temporarily stop sending output
to the client in order to avoid crashing it.
To change this limit, set the config variable
`--NotebookApp.iopub_data_rate_limit`.
Current values:
NotebookApp.iopub_data_rate_limit=1000000.0 (bytes/sec)
NotebookApp.rate_limit_window=3.0 (secs)
Возможно, вы хотите настроить NotebookApp.iopub_data_rate_limit
, но тогда это становится более техническим, и вам может потребоваться go командная строка и возиться с настройками конфигурации Превышена скорость передачи данных IOPub в ноутбуке Jupyter (при просмотре изображения)
Мое решение позволяет вам печатать все строки, не связываясь с pd.options
и не редактируя эти ограничения вручную в файлах конфигурации. Конечно, опять же, это действительно зависит от того, сколько строк вы хотите напечатать на своих терминалах.