我正在使用IPython处理允许DataFrame
对象的pandas模块。当我运行一些代码时,我得到一个输出,其中DataFrame
输出在我的终端宽度之前被包装,尽管终端宽度应该适应长度。这个问题似乎只与pandas Series和DataFrame对象隔离,而不是说长列表。
运行pip uninstall readline
然后通过easy_install重新安装readline并重新启动IPython并没有解决问题。
看到我的数据没有这样分解会很有帮助,但老实说我不知道从哪里开始解决这个问题。有什么见解吗?
答案 0 :(得分:5)
我找到了一种解决方法,允许控制台输出更具可读性。在to_string()
对象上调用DataFrame
将返回对象的字符串表示形式,绕过DataFrame
包含的任何固有格式,特别是因为目标是可读性。
data = DataFrame(some_long_list)
print data.to_string() # outputs to console's full-width
编辑: 来自pandas docs:“自0.10.0以来新增,默认情况下,宽数据帧将在多行中打印”。我发现这有助于作为默认值,因此您不会将行填入下一行,而是会看到按列分隔。配置输出宽度还有两种方法:
import pandas as pd
pd.set_option('line_width', 40) # default is 80
或完全关闭环绕功能:
pd.set_option('expand_frame_repr', False)