像在 Jupyter 中一样从函数中打印数据帧 [重复]

Posted

技术标签:

【中文标题】像在 Jupyter 中一样从函数中打印数据帧 [重复]【英文标题】:Printing a dataframe from a function nicely as in Jupyter [duplicate] 【发布时间】:2019-10-16 12:07:43 【问题描述】:

我看过很多关于使用 prettyprint 等非常有用的帖子;他们非常有帮助——谢谢。

我想知道是否有办法从函数中打印数据帧并像 Jupyter notebook 那样“漂亮地”输出:

我的主要原因是我想使用 pandas 的样式功能来突出/阴影。如果可能的话,我还想从函数而不是 Jupyter 代码框打印,因为我已经创建了一些包,并且我可能想在调用中吐出 2 个或更多数据帧。

单独使用 prettyprint 或 print() 会给出纯文本输出:

>       Year      Month  Mean Maximum Temperature Albury  \ 
> 672   1955    January                             30.8    
> 673   1955   February                             27.9    
> 674   1955      March                             26.7
> 675   1955      April                             22.1  
> ....

我想要图形输出。不使用 print(),例如

historic_dataframe

如果在函数内什么也不做。

感谢您的宝贵时间。

【问题讨论】:

【参考方案1】:

使用来自IPythondisplay 而不是打印

import pandas as pd
from IPython.display import display

df = pd.DataFrame(pd.np.random.random((10, 10)))
display(df)

display docs

【讨论】:

谢谢你,Dan G;这太棒了!很抱歉没有找到较早的问题并提出重复问题。 经典案例。我点击了upvote,因为我没有看到它被标记为重复...

以上是关于像在 Jupyter 中一样从函数中打印数据帧 [重复]的主要内容,如果未能解决你的问题,请参考以下文章

在 Jupyter 中将 PySpark 数据帧打印为格式化表

如何在 jupyter 中像 pandas Dataframe 一样打印 Pyspark Dataframe

如何从power bi中的python函数返回单个数据帧

我可以像在 for 循环中从数组中索引项目一样从元组中检索项目吗?

回调函数不打印,除非由 Jupyter 运行

从Spark limit()函数重新分区数据帧