python – 是否有一种简洁的方法来显示当前命令的pandas中的所有行?

有时我想在pandas DataFrame中显示所有行,但仅针对单个命令或代码块.

当然我可以将“max_rows”显示选项设置为一个大数字,但之后我必须重复该命令才能恢复到我的首选设置. (我个人最喜欢12行).

pd.options.display.max_rows=1000
myDF
pd.options.display.max_rows=12

那很烦人.

我在文档中读到,如果我将命令与“with”语句结合使用,我可以使用pd.option_context()函数来完成此操作:

with pd.option_context("display.max_rows", 1000): myDF

我无法让它工作,(没有输出返回).
但我认为这样的解决方案对于日常偶然使用来说仍然会打字过多!

我希望有一些快速的pythonic方式来覆盖显示选项!
有人存在吗?我忽略了什么吗?

我喜欢如何通过为行数传递一个参数来改变.head()函数输出的行数,但它仍然必须低于“display.max_rows”设置…

我知道我可以一直保持“display.max_rows”设置非常高,然后在大部分时间都使用.head(12)功能,但我想大多数人会同意这会有多烦人.

我确实知道可以通过将pandas系列中的值传递给核心函数(如list())来查看所有(或大多数?)值.但这对DF来说很棘手.此外,当它不是表格格式时,很难阅读.

the solution for my first question类似,我想可能有一种方法可以编写我自己的函数(放在启动脚本中),但我不确定编写它的最佳方法.

解决方法:

您可以编写一个显式调用display的函数

例如,考虑这个功能:

from IPython.display import display

def show_more(df, lines):
    foo = 1
    display(df)
    foo = 2

当我调用该函数时(刚尝试过):

>> show_more(df, 1000)
... # <- Shows here the DF

然后它显示数据帧,即使之后执行了行foo = 2.接下来你可以设置选项而不是行foo = 1并在行foo = 2中取消设置它.实际上,你可以使用你问题中的上下文管理器.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐