Отображение всех столбцов и строк в DataFrame Pandas
В этом учебном пособии вы узнаете, как изменить параметры отображения в Pandas для вывода всех столбцов, а также всех строк в вашем DataFrame. По умолчанию Pandas ограничит количество отображаемых столбцов и строк. Хотя это может быть полезно с точки зрения возможности прочитать содержимое, это часто может привести к разочарованию, если данные, которые вы хотите увидеть, не отображаются.
К концу этого урока вы научитесь:
Как определить значения по умолчанию для количества столбцов и строк, которые будет отображать Pandas
Как показать все столбцы и/или строки в кадре данных Pandas
Как указать количество столбцов и/или строк для отображения из DataFrame Pandas
Как сбросить отображаемые значения к значениям по умолчанию
Оглавление
Загрузка образца DataFrame Pandas
Чтобы следовать этому учебному пособию построчно, не стесняйтесь копировать и вставлять код ниже, чтобы загрузить образец DataFrame Pandas. Мы будем использовать функцию load_dataset()
из библиотеки Seaborn и загружать набор данных 'brain_networks'
. Если у вас есть свои данные, не стесняйтесь использовать их.
import pandas as pd
from seaborn import load_dataset
# Загружаем датасет 'brain_networks' из библиотеки seaborn
df = load_dataset('brain_networks')
print(df)
# Возвращает:
# network 1 1.1 ... 17.4 17.5 17.6
# 0 node 1 1 ... 3 3 4
# 1 hemi lh rh ... lh rh lh
# 2 NaN NaN NaN ... NaN NaN NaN
# 3 0 56.05574417114258 92.03103637695312 ... -10.520872116088867 120.49046325683594 -39.686431884765625
# 4 1 55.5472526550293 43.6900749206543 ... -39.607521057128906 24.76401138305664 -36.7710075378418
# .. ... ... ... ... ... ... ...
# 918 915 -7.4295125007629395 -4.81321907043457 ... 22.893030166625977 48.27437973022461 76.22845458984375
# 919 916 -33.55413818359375 -38.60562133789063 ... 24.97454833984375 51.97215270996094 64.53878784179689
# 920 917 -78.53956604003906 -74.19718933105469 ... 66.99440002441406 81.53924560546875 64.96977233886719
# 921 918 -103.23582458496094 -98.7442855834961 ... 20.517745971679688 3.124434232711792 56.71838760375977
# 922 919 -36.28886795043945 -10.762069702148438 ... 8.300398826599121 33.687530517578125 17.960655212402344
# [923 rows x 63 columns]
При выводе DataFrame на печать можно заметить, что как ось столбцов, так и ось строк были усечены. Давайте начнем с изучения способов определения количества строк и столбцов, которые Pandas отображает по умолчанию.
Поиск значений по умолчанию для количества столбцов/строк, отображаемых Pandas
Чтобы отобразить количество строк и столбцов, которые Pandas показывает по умолчанию, мы можем использовать функцию .get_option()
. Эта функция принимает значение и возвращает указанную опцию для этого значения.
В данном случае мы ищем два конкретных варианта:
'display.max_columns'
, который контролирует количество отображаемых столбцов'display.max_rows'
, который контролирует количество отображаемых строк
Давайте посмотрим, какое максимальное количество столбцов будет отображать наш скрипт:
# Определение максимального количества строк для отображения
print(pd.get_option('display.max_rows'))
# Возвращает: 0
Значение, возвращенное в данном случае, равно 0
. Ноль является особым случаем. Это означает, что Pandas автоматически попытается найти наилучший вариант, исходя из размера вашего терминала.
В этом разделе вы узнаете, как отобразить все колонки вашего DataFrame в Pandas. Для этого мы можем использовать функцию pd.set_option()
. Аналогично приведенному выше примеру, мы хотим установить параметр display.max_columns
Чтобы отобразить все столбцы в Pandas, мы должны установить эту опцию в значение None
. Давайте посмотрим, как мы можем это сделать:
pd.set_option('display.max_columns', None)
print(df.head(2))
# Возвращает:
# network 1 1.1 2 2.1 3 3.1 4 4.1 5 5.1 6 6.1 6.2 6.3 7 7.1 7.2 \
# 0 node 1 1 1 1 1 1 1 1 1 1 1 1 2 2 1 1 2
# 1 hemi lh rh lh rh lh rh lh rh lh rh lh rh lh rh lh rh lh
# 7.3 7.4 7.5 8 8.1 8.2 8.3 8.4 8.5 9 9.1 10 10.1 11 11.1 12 12.1 12.2 \
# 0 2 3 3 1 1 2 2 3 3 1 1 1 1 1 1 1 1 2
# 1 rh lh rh lh rh lh rh lh rh lh rh lh rh lh rh lh rh lh
# 12.3 12.4 13 13.1 13.2 13.3 13.4 13.5 14 14.1 15 15.1 16 16.1 16.2 16.3 \
# 0 2 3 1 1 2 2 3 4 1 1 1 1 1 1 2 2
# 1 rh lh lh rh lh rh rh rh lh rh lh rh lh rh lh rh
# 16.4 16.5 16.6 16.7 17 17.1 17.2 17.3 17.4 17.5 17.6
# 0 3 3 4 4 1 1 2 2 3 3 4
# 1 lh rh lh rh lh rh lh rh lh rh lh
В этом случае Pandas будет продолжать оборачивать столбцы, даже если они разделяются на несколько строк.
Еще один способ достичь этого - использовать прямое присваивание. Мы можем сделать это, непосредственно присвоив значение опции, как показано ниже:
# Установка опции отображения напрямую
pd.options.display.max_columns = None
Как указать количество столбцов для отображения в таблице данных Pandas
Мы можем использовать точно такой же метод, чтобы заставить Pandas отображать заданное количество столбцов. Это можно сделать, передав конкретное количество столбцов в опцию.
Например, если мы хотим отобразить 8 колонок, мы могли бы использовать один из двух методов ниже:
# Указание количества отображаемых столбцов
pd.set_option('display.max_columns', 8)
# Или
# pd.options.display.max_columns = 8
print(df.head(2))
# Возвращает:
# network 1 1.1 2 ... 17.3 17.4 17.5 17.6
# 0 node 1 1 1 ... 2 3 3 4
# 1 hemi lh rh lh ... rh lh rh lh
# [2 rows x 63 columns]
Как показать все строки в таблице данных Pandas
В других случаях вы можете захотеть по умолчанию отображать другое количество строк. Это можно сделать точно так же, как описано выше, за исключением того, что нам нужно будет указать опцию display.max_rows
. Поэтому мы можем использовать любой из нижеприведенных вариантов:
# Указание количества отображаемых строк
pd.set_option('display.max_rows', None)
# Или
# pd.options.display.max_rows = None
Из-за объема набора данных, строки здесь выводиться не будут.
Как указать количество строк для отображения в таблице данных Pandas
Как и в приведенном выше примере, мы можем легко указать количество отображаемых строк. Как правило, Pandas отображает первые пять строк и последние пять строк. Мы можем изменить это поведение, переопределив значения отображения и указав конкретное значение.
Это поведение работает немного иначе, поскольку нам также необходимо установить минимальное количество отображаемых строк.
Давайте рассмотрим пример, чтобы по умолчанию отобразить 20 строк:
# Отображение 20 строк в DataFrame
pd.set_option('display.max_rows', 200)
pd.set_option('display.min_rows', 20)
Как сбросить параметры отображения в Pandas
Для сброса параметров отображения Pandas предлагает ряд подходящих по названию функций. Мы можем использовать функцию pd.reset_option()
Чтобы сбросить количество столбцов, которые мы хотим отобразить, можно использовать следующий код:
# Сброс количества отображаемых столбцов
pd.reset_option('display.max_columns')
Чтобы сбросить количество отображаемых строк, мы можем использовать следующий код:
# Сброс количества отображаемых строк
pd.reset_option('display.max_rows')
Мы также можем сбросить все настройки одновременно, используя регулярные выражения:
# Сброс всех опций отображения одновременно
pd.reset_option("^display")
Заключение
В этом посте вы узнали, как отображать все столбцы или строки в DataFrame библиотеки Pandas. Вы научились изменять настройки отображения в Pandas, чтобы указывать, сколько столбцов и строк отображать. Также вы узнали, как сбросить эти значения до их значений по умолчанию.
Дополнительные ресурсы
Чтобы узнать больше о связанных темах, ознакомьтесь с нижеприведенными учебными пособиями:
Pandas: количество столбцов (подсчет столбцов фрейма данных)
Pandas: создайте фрейм данных из списков (5 способов!)
Создайте пустой фрейм данных Pandas и добавьте данные
Last updated