查看以下DataFrame
时出现问题:
n = 100
foo = DataFrame(index=range(n))
foo['floats'] = np.random.randn(n)
foo
问题是,在ipython notebook中,默认情况下它不会打印所有行,但我必须切片才能查看结果行。即使以下选项也不会更改输出:
pd.set_option('display.max_rows', 500)
有人知道如何显示整个数组吗?
发布于 2017-11-05 01:46:38
就我个人而言,我喜欢用赋值语句直接设置选项,因为多亏了iPython,通过制表符完成可以很容易地找到这些选项。我发现很难记住确切的选项名称,所以这个方法对我很有效。
例如,我所要记住的就是它以pd.options
开头
pd.options.<TAB>
大多数选项都在display
下可用
pd.options.display.<TAB>
从这里,我通常输出当前值,如下所示:
pd.options.display.max_rows
60
然后,我将其设置为我想要的值:
pd.options.display.max_rows = 100
此外,您还应该注意options的上下文管理器,它会在代码块中临时设置选项。以字符串的形式传入选项名称,后跟您希望的值。您可以在同一行中传入任意数量的选项:
with pd.option_context('display.max_rows', 100, 'display.max_columns', 10):
some pandas stuff
您还可以将选项重置回其默认值,如下所示:
pd.reset_option('display.max_rows')
并将它们全部重置回来:
pd.reset_option('all')
通过pd.set_option
设置选项仍然是非常好的。我只是发现直接使用属性更容易,而且对get_option
和set_option
的需求也更少。
发布于 2017-01-05 22:47:17
就像在similar question的this answer中一样,不需要修改设置。它的编写要简单得多:
print(foo.to_string())
https://stackoverflow.com/questions/16424493
复制相似问题