Aktualizacja: Panda 0.23.4 i nowsze
Nie jest to konieczne, jeśli panda automatycznie wykryje rozmiar okna terminala, jeśli zostanie ustawiony pd.options.display.width = 0
. (W przypadku starszych wersji patrz na dole).
pandas.set_printoptions(...)
jest przestarzałe. Zamiast tego użyj pandas.set_option(optname, val)
lub równoważnie pd.options.<opt.hierarchical.name> = val
. Lubić:
import pandas as pd
pd.set_option('display.max_rows', 500)
pd.set_option('display.max_columns', 500)
pd.set_option('display.width', 1000)
Oto pomoc dlaset_option
:
set_option (pat, value) - Ustawia wartość określonej opcji
Dostępne opcje:
display. [chop_threshold, colheader_justify, column_space, date_dayfirst,
date_yearfirst, kodowanie, expand_frame_repr, float_format, height,
szerokość_wiersza, maks_kolumny, maks ._kolumna, maks ._katalogu, maks.
max_rows, max_seq_items, mpl_style, multi_sparse, notebook_repr_html,
pprint_nest_depth, precyzja, szerokość]
tryb. [sim_interactive, use_inf_as_null]
Parametry
----------
pat - str / regexp, który powinien pasować do jednej opcji.
Uwaga: dopasowania częściowe są obsługiwane dla wygody, ale chyba że używasz
pełna nazwa opcji (egxyzoption_name), twój kod może się zepsuć w przyszłości
wersje, jeśli zostaną wprowadzone nowe opcje o podobnych nazwach.
wartość - nowa wartość opcji.
Zwroty
-------
Żaden
Podnosi
------
KeyError, jeśli taka opcja nie istnieje
display.chop_threshold: [domyślnie: brak] [obecnie: brak]
: float lub None
jeśli ustawione na wartość zmiennoprzecinkową, wszystkie wartości zmiennoprzecinkowe są mniejsze niż podany próg
będą wyświetlane jako dokładnie 0 przez repr i znajomych.
display.colheader_justify: [default: right] [obecnie: right]
: 'Lewo prawo'
Kontroluje justowanie nagłówków kolumn. używane przez DataFrameFormatter.
display.column_space: [domyślnie: 12] [obecnie: 12] Brak opisu.
display.date_dayfirst: [default: False] [obecnie: False]
: boolean
W przypadku wartości True drukowane i analizowane są daty pierwszego dnia, np. 20/01/2005
display.date_yearfirst: [default: False] [obecnie: False]
: boolean
W przypadku wartości True drukowane i analizowane są daty z pierwszym rokiem, np. 2005/01/20
display.encoding: [domyślnie: UTF-8] [obecnie: UTF-8]
: str / Unicode
Domyślnie wykryte kodowanie konsoli.
Określa kodowanie, które ma być używane dla ciągów zwracanych przez to_string,
są to na ogół ciągi znaków, które mają być wyświetlane na konsoli.
display.expand_frame_repr: [default: True] [obecnie: True]
: boolean
Czy wydrukować pełną wersję DataFrame dla szerokich ramek DataFrame
w wielu wierszach ciąg „max_columns” jest nadal przestrzegany, ale wynik będzie
zawijać na wielu „stronach”, jeśli jego szerokość przekracza „display.width”.
display.float_format: [domyślnie: Brak] [obecnie: Brak]
: na żądanie
Odwołanie powinno zaakceptować liczbę zmiennoprzecinkową i powrócić
ciąg o żądanym formacie liczby. To jest używane
w niektórych miejscach, takich jak SeriesFormatter.
Zobacz core.format.EngFormatter na przykład.
display.height: [domyślnie: 60] [obecnie: 1000]
: int
Przestarzałe.
(Przestarzałe, zamiast tego użyj `display.height`.)
display.line_width: [domyślnie: 80] [obecnie: 1000]
: int
Przestarzałe.
(Przestarzałe, zamiast tego użyj `display.width`.)
display.max_columns: [domyślnie: 20] [obecnie: 500]
: int
max_rows i max_columns są używane w metodach __repr __ (), aby zdecydować, czy
To_string () lub info () służy do renderowania obiektu na łańcuch. W razie
Python / IPython działa w terminalu, można ustawić na 0 i pandy
prawidłowo wykryje szerokość terminala i zamieni na mniejsze
format na wypadek, gdyby wszystkie kolumny nie pasowały pionowo. Notatnik IPython,
IPython qtconsole lub IDLE nie działają w terminalu i dlatego tak nie jest
możliwe wykonanie prawidłowego automatycznego wykrywania.
„Brak” oznacza nieograniczony.
display.max_colwidth: [domyślnie: 50] [obecnie: 50]
: int
Maksymalna szerokość znaków w kolumnie w repr
struktura danych pand. Gdy kolumna się przepełnia, „...”
symbol zastępczy jest osadzony w wyjściu.
display.max_info_columns: [domyślnie: 100] [obecnie: 100]
: int
Metoda max_info_columns jest używana w metodzie DataFrame.info w celu podjęcia decyzji, czy
informacje w kolumnie zostaną wydrukowane.
display.max_info_rows: [domyślnie: 1690785] [obecnie: 1690785]
: int lub None
max_info_rows to maksymalna liczba wierszy, dla których zrobi to ramka
podczas sprawdzania w konsoli wykonaj zerowanie kolumn.
Domyślnie jest to 1 000 000 wierszy. Więc jeśli DataFrame ma więcej
1 000 000 wierszy nie będzie przeprowadzana kontrola zerowa na
kolumny, a zatem reprezentacja zajmie znacznie mniej czasu
wyświetlać w interaktywnej sesji. Wartość Brak oznacza zawsze
podczas sprawdzania zeruj.
display.max_rows: [domyślnie: 60] [obecnie: 500]
: int
Ustawia to maksymalną liczbę wierszy, które pandy powinny wydrukować
z różnych wyników. Na przykład ta wartość określa, czy repr ()
dla ramki danych jest drukowane w całości lub tylko repr.
„Brak” oznacza nieograniczony.
display.max_seq_items: [domyślnie: brak] [obecnie: brak]
: int lub None
przy ładnym drukowaniu długiej sekwencji, nie więcej niż `max_seq_items`
zostanie wydrukowany. Jeśli przedmioty zostaną pominięte, zostaną oznaczone przez dodanie
z „...” na wynikowy ciąg.
Jeśli ustawiono na Brak, liczba elementów do wydrukowania jest nieograniczona.
display.mpl_style: [domyślnie: brak] [obecnie: brak]
: bool
Ustawienie tej wartości na „default” spowoduje modyfikację rcParams używanych przez matplotlib
aby domyślnie nadać działkom bardziej przyjemny styl wizualny.
Ustawienie tej wartości na Brak / Fałsz przywraca wartości do wartości początkowej.
display.multi_sparse: [default: True] [obecnie: True]
: boolean
„sparsify” wyświetlacz MultiIndex (nie wyświetla się powtórnie
elementy na poziomach zewnętrznych w ramach grup)
display.notebook_repr_html: [domyślnie: prawda] [obecnie: prawda]
: boolean
W przypadku wartości True notatnik IPython będzie używał reprezentacji HTML dla
obiekty pand (jeśli są dostępne).
display.pprint_nest_depth: [domyślnie: 3] [obecnie: 3]
: int
Kontroluje liczbę zagnieżdżonych poziomów do przetworzenia przy ładnym drukowaniu
display.precision: [domyślnie: 7] [obecnie: 7]
: int
Dokładność wyjścia zmiennoprzecinkowego (liczba cyfr znaczących). To jest
tylko sugestia
display.width: [default: 80] [obecnie: 1000]
: int
Szerokość wyświetlacza w znakach. W przypadku, gdy działa Python / IPython
terminal może być ustawiony na Brak, a pandy poprawnie wykryją automatycznie
szerokość.
Uwaga: Notatnik IPython, qytconsole IPython lub IDLE nie działają w trybie
terminal i dlatego nie jest możliwe prawidłowe wykrycie szerokości.
mode.sim_interactive: [default: False] [obecnie: False]
: boolean
Czy symulować tryb interaktywny do celów testowych
mode.use_inf_as_null: [default: False] [obecnie: False]
: boolean
Prawda oznacza traktowanie None, NaN, INF, -INF jako null (stary sposób),
False oznacza, że None i NaN są zerowe, ale INF, -INF nie są zerowe
(nowy sposób).
Wywołanie def: pd.set_option (self, * args, ** kwds)
EDYCJA: informacje o starszej wersji, większość z nich jest przestarzała.
Jak wspomniano @bmu , pandy automatycznie wykrywają (domyślnie) rozmiar obszaru wyświetlania, widok podsumowania zostanie użyty, gdy repr obiektu nie zmieści się na ekranie. Wspomniałeś o zmianie rozmiaru okna IDLE, bez żadnego efektu. Jeśli tak, print df.describe().to_string()
czy pasuje to do okna IDLE?
Rozmiar terminala jest określony przez pandas.util.terminal.get_terminal_size()
(przestarzałe i usunięte), zwraca to krotkę zawierającą (width, height)
wyświetlacz. Czy wyjście odpowiada rozmiarowi twojego okna IDLE? Może występować problem (był wcześniej jeden podczas uruchamiania terminala w emacsie).
Pamiętaj, że można ominąć autodetekcję, pandas.set_printoptions(max_rows=200, max_columns=10)
nigdy nie przejdzie do widoku podsumowania, jeśli liczba wierszy, kolumn nie przekroczy podanych limitów.
Opcja „max_colwidth” pomaga zobaczyć nieskalowaną formę każdej kolumny.
display.height
zamiast tego ... Jestem w martwej pętli.pd.options
, np.pd.options.display.max_rows = 999
.head()
lub czegoś innego.Spróbuj tego:
Z dokumentacji:
Zobacz: http://pandas.pydata.org/pandas-docs/stable/generated/pandas.set_option.html
źródło
pandas\core\config_init.py
aby go ustawić na stałe.Jeśli chcesz tymczasowo ustawić opcje wyświetlania jednej dużej ramki danych, możesz użyć opcji_kontekst :
Wartości opcji są przywracane automatycznie po wyjściu z
with
bloku.źródło
None
można użyć (zamiast 999 itd.).with pd.option_context('display.max_rows', None, 'display.max_columns', None): print(energy)
nie działało Nie zmieniło to liczby kolumn, które chciałem zobaczyć. Jednak rozwiązanie Woutera Overmeiere działało.-1
lub500
, nie None.max_rows
wartość;). Ustawienie'display.max_rows'
-1 wydaje się całkowicie popsuć formatowanie (dla moich danych nie ma awarii, ale teraz drukuje pewne wiersze wiele razy).Tylko użycie tych 3 linii działało dla mnie:
Anaconda / Python 3.6.5 / panda: 0.23.0 / Visual Studio Code 1.26
źródło
Ustaw maksymalną szerokość kolumny za pomocą:
Ta konkretna instrukcja ustawia maksymalną szerokość na 800 pikseli na kolumnę.
źródło
display.max_colwidth
? Tak to jest wymienione w dokumentacji. Zgadzam się, że tylkomax_colwidth
działa i jest krótszy do napisania, ale byłem zaskoczony.Możesz użyć tej opcji,
print df.describe().to_string()
aby wymusić wyświetlenie całego stołu. (Możesz użyćto_string()
tego w dowolny sposób dla DataFrame. Wynikiemdescribe
jest tylko sama DataFrame.)Liczba 8 to liczba wierszy w ramce danych zawierającej „opis” (ponieważ
describe
oblicza 8 statystyk, min, maks, średnią itp.).źródło
Możesz dostosować opcje drukowania pand za pomocą
set_printoptions
.Jednak nie będzie to działać we wszystkich przypadkach, ponieważ pandy wykrywają szerokość konsoli i będą używane tylko
to_string
wtedy, gdy dane wyjściowe mieszczą się w konsoli (patrz dokumentacjaset_printoptions
). W takim przypadku możesz jawnie zadzwonićto_string
zgodnie z odpowiedzią BrenBarn .Aktualizacja
W wersji 0.10 drodze szerokie dataframes są drukowane zmieniło :
Ponadto zmieniono interfejs API do ustawiania opcji pand:
źródło
Możesz ustawić wyświetlanie wyjściowe tak, aby pasowało do bieżącej szerokości terminala:
źródło
pd.set_option('display.width', None)
w terminalu, „pandy poprawnie automatycznie wykryją szerokość” .pd.options.display.width = None
pd.io.formats.terminal.get_terminal_size()
Zgodnie z dokumentacją v0.18.0 , jeśli używasz terminala (tj. Nie iPython notebook, qtconsole lub IDLE), to 2-liniowy program Pandas automatycznie wykrywa szerokość ekranu i dostosowuje się w locie z ilu kolumny, które pokazuje:
źródło
Wygląda na to, że wszystkie powyższe odpowiedzi rozwiązują problem. Jeszcze jeden punkt: zamiast
pd.set_option('option_name')
możesz użyć opcji (autouzupełnianie)Zobacz dokument Pandas: Opcje i ustawienia:
[...]
dla
max_...
:dla
width
param:źródło
Wynik:
źródło
Użyłem tych ustawień, gdy skala danych jest wysoka.
Możesz zapoznać się z dokumentacją tutaj
źródło
Poniższy wiersz wystarczy, aby wyświetlić wszystkie kolumny z ramki danych.
pd.set_option('display.max_columns', None)
źródło
pd.set_option('display.max_columns', 0)
Jakie są twoje zalety?Jeśli nie chcesz zadzierać z opcjami wyświetlania i chcesz tylko zobaczyć tę konkretną listę kolumn bez rozwijania każdej wyświetlanej ramki danych, możesz spróbować:
źródło
Możesz także spróbować w pętli:
źródło
Możesz po prostu wykonać następujące kroki,
Możesz zmienić opcje dla pandas max_columns w następujący sposób
(pozwala to na wyświetlenie 10 kolumn, możesz to zmienić w razie potrzeby)
W ten sposób możesz zmienić liczbę wierszy, ponieważ musisz wyświetlić w następujący sposób (jeśli musisz również zmienić maksymalną liczbę wierszy)
(pozwala to na wydrukowanie 999 wierszy jednocześnie)
Proszę zapoznać się z dokumentem, aby zmienić różne opcje / ustawienia dla pand
źródło