在 pandas 数据框中打印截断的列

Printing truncated columns in pandas dataframe

我有一个包含一些相当长的列值的数据框,我希望在打印时截断它们,以便它只打印前 10 或 20 个字符。这是数据框:

如您所见,trip_id 非常长,将其他列移到下一行。 有人知道如何打印此 DF 以便缩短 trip_id 吗?我只发现询问如何打印 non-truncated 数据帧的问题。我想 pd.option_context 中有一些选项,但我还没有找到它。

这是我的打印代码:

with pd.option_context('expand_frame_repr', True):
    print(f"Trips_with_service_days (mit Fahrplantagen)")
    print(f"{trips_with_service_days.head()[['trip_id', 'service_id', 'start_date', 'end_date', 'fahrplantage_ohne_ausfaelle']]}")

提前致谢。

感谢@Simone 在评论中的回答。 display.max_colwidth 选项可以满足我的要求。新代码:

pd.set_option("max_colwidth", 35)
with pd.option_context('expand_frame_repr', True):
    print(f"Trips_with_service_days (mit Fahrplantagen)")
    print(f"{trips_with_service_days.head()[['trip_id', 'service_id', 'start_date', 'end_date', 'fahrplantage_ohne_ausfaelle']]}")