Панды: установка нет. из максимальных строк



у меня проблема с просмотром следующего DataFrame:



n = 100
foo = DataFrame(index=range(n))
foo['floats'] = np.random.randn(n)
foo


проблема в том, что он не печатает все строки по умолчанию в IPython notebook, но мне нужно нарезать, чтобы просмотреть полученные строки. Даже следующая опция не изменяет вывод:



pd.set_option('display.max_rows', 500)


кто-нибудь знает, как вывести весь массив?

722   5  

5 ответов:

для версии 0.11.0 вам нужно изменить как display.height и display.max_rows.

pd.set_option('display.height', 500)
pd.set_option('display.max_rows', 500)

см. также pd.describe_option('display').

лично мне нравится устанавливать параметры непосредственно с помощью оператора присваивания, поскольку его легко найти с помощью завершения вкладки благодаря iPython. Мне трудно вспомнить, каковы точные имена опций, поэтому этот метод работает для меня.

например, все, что я должен помнить, что он начинается с pd.options

pd.options.<TAB>

enter image description here

большинство опций доступны по display

pd.options.display.<TAB>

enter image description here

отсюда я обычно выводил текущее значение следующим образом:

pd.options.display.max_rows
60

затем я установил его в то, что я хочу, чтобы это было:

pd.options.display.max_rows = 100

кроме того, вы должны знать о менеджере контекста для опций, который временно устанавливает параметры внутри блока кода. Введите имя параметра в виде строки, за которой следует нужное значение. Вы можете пройти в любое количество вариантов в одном и том же линия:

with pd.option_context('display.max_rows', 100, 'display.max_columns', 10):
    some pandas stuff

вы также можете сбросить настройки по умолчанию такой:

pd.reset_option('display.max_rows')

и сбросить все из них обратно:

pd.reset_option('all')

это все еще очень хорошо, чтобы установить параметры через pd.set_option. Я просто нахожу использование атрибутов напрямую проще и меньше необходимости get_option и set_option.

как отметил @hanleyhansen в комментарии, начиная с версии 0.18.1,display.height опция устарела, и говорит " use display.max_rows вместо". Поэтому вам просто нужно настроить его следующим образом:

pd.set_option('display.max_rows', 500)

посмотреть примечания к выпуску-панды 0.18.1 документация:

устаревший дисплей.высота, дисплей.ширина теперь только параметр форматирования не контролирует запуск сводки, подобно

а в ответ до аналогичный вопрос, нет необходимости взломать настройки. Гораздо проще написать:

print(foo.to_string())

Он уже был указан в комментарий и ответ, но я постараюсь дать более прямой ответ на вопрос:

from IPython.display import display
import numpy as np
import pandas as pd

n = 100
foo = pd.DataFrame(index=range(n))
foo['floats'] = np.random.randn(n)

with pd.option_context("display.max_rows", foo.shape[0]):
    display(foo)

панды.option_context доступно с pandas 0.13.1 (панды 0.13.1 примечания к выпуску). Согласно этой,

[it] позволяет [s] выполнить кодовый блок с набором параметров, которые возвращаются к предыдущим настройкам при выходе из с блок.

Comments

    Ничего не найдено.