Mit langen Spaltennamen werden DataFrames in einer sehr unübersichtlichen Form angezeigt, egal, was options gesetzt sind.Pandas-Display: Abschneiden der Spaltenanzeige statt Umbrechen
Info: Ich bin in Jupyter QtConsole, Pandas 0.20.1, mit den folgenden entsprechenden Optionen beim Start angegeben:
pd.set_option('display.max_colwidth', 20)
pd.set_option('expand_frame_repr', False)
pd.set_option('display.max_rows', 25)
Frage: Wie kann ich den Datenrahmen bei Bedarf kürzen, anstatt die Spalten Einwickeln zu die nächste Zeile, während expand_frame_repr=False
beibehalten?
Hier ist ein Beispiel. Auch hier hängt das Problem nicht von der Anzahl der Spalten, sondern von der Länge der Spalten ab.
Dies wird nicht ein Problem verursachen:
df = pd.DataFrame(np.random.randn(1000, 1000),
columns=['col' + str(i) for i in range(1000)])
Da die Ausgabe perfekt lesbar ist und wie folgt aussieht:
Das gleiche Datenrahmen mit langen Spaltennamen das Problem verursacht ich spreche:
df = pd.DataFrame(np.random.randn(1000, 1000),
columns=['very_long_col_name_'
+ str(i) for i in range(1000)])
Gibt es eine Möglichkeit, den zweiten Ausgang so anzupassen, dass er wie der erste ist, den ich vermisse? (Durch eine Option angeben, nicht durch .iloc
Verwendung jedes Mal, wenn ich sehen möchten.)
Hmm, ist dies kein Problem auf Ipython3. Die Spalten werden durch ein '/' geteilt und nachfolgende Spalten werden unter die erste Gruppe verschoben. –
Was gibt Ihnen 'pd.options.display.line_width'? wenn es korrekt ist, sieht es normalerweise OK aus, aber in einigen Konsolen, die es nicht automatisch berechnen können (qtconsole war wie dieses IIRC), erscheint es als None und die Dinge sehen in diesem Fall nicht immer gut aus ... –
@Coldspeed Ich nehme an, Sie haben 'expand_frame_repr = True'. Ich möchte diese Darstellung vermeiden. Überprüfen Sie Ihre 'pd.options.display.expand_frame_repr' –