如何在IPython pandas中配置显示输出

2024-04-23 18:27:00 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图在我的OS X终端中配置IPython输出,但似乎我试图设置的任何更改都没有生效。我正在尝试配置显示设置,以便更宽的输出(如大的DataFrame)将输出而不进行任何截断或作为摘要信息。

在将熊猫导入到我的脚本中之后,我设置了几个选项,其中我尝试了一大堆,但任何一个(或所有,就这一点而言)似乎都没有效果。我正在使用%run运行IPython中的脚本。我在这里做错什么了吗?

import pandas as pd

pd.set_option('display.expand_max_repr', False)
pd.set_option('display.max_columns', 30)
pd.set_option('display.width', None)
pd.set_option('display.line_width', 200)

我看了堆栈上的some threadspandas FAQ都没有用,即使在显示名称空间下(或不在显示名称空间下)使用它们也是如此。

我知道有一些方法可以解决这个问题,比如在输出中调用to_string()describe()方法,但是这些方法非常手动,在某些情况下并不总是按预期工作,比如我在groupby对象上调用to_string()会产生:

    id       type
106125       puzzle       gameplay_id  sitting_id  user_id           ...
106253       frames       gameplay_id  sitting_id  user_id           ...
106260       trivia       gameplay_id  sitting_id  user_id           ...

我的终端窗口大小足以容纳宽度,调用pd.util.terminal.get_terminal_size()可以正确地找到窗口大小元组,因此自动检测大小似乎也不起作用。任何洞察都将不胜感激!


Tags: 方法脚本id终端pandasipythondisplaywidth
1条回答
网友
1楼 · 发布于 2024-04-23 18:27:00

为了完整起见(我将添加我的评论作为回答),您遗漏了:

pd.options.display.max_colwidth  # default is 50

这限制了单个列的最大长度。

这里有很多配置选项,如果您使用ipython then tab complete来查找full set of display options

pd.options.display.<tab>

相关问题 更多 >