有没有办法(漂亮)打印整个pandas系列/dataframe?
我在terminal上使用了Series和DataFrames。 一个Series的默认__repr__
返回一个减less的样本,有一些头部和尾部的值,但其余的缺失。
是否有内置的方式来漂亮地打印整个系列/dataframe? 理想情况下,它将支持正确的alignment,也许列之间的边界,甚至可能为不同的列进行颜色编码。
您也可以使用option_context和一个或多个选项:
with pd.option_context('display.max_rows', None, 'display.max_columns', 3): print(df)
这会自动将选项返回到以前的值。
另外 :如果你正在jupyter笔记本上工作,使用display
而不是print
将使用jupyter丰富的显示逻辑。
当然,如果这个出现了很多,就做出这样的function吧。 您甚至可以将其configuration为每次启动IPython时加载: https : //ipython.org/ipython-doc/1/config/overview.html
def print_full(x): pd.set_option('display.max_rows', len(x)) print(x) pd.reset_option('display.max_rows')
至于着色方面,用颜色过于细腻的话听起来会适得其反,但我赞同bootstrap的.table-striped
就好。 你总是可以创build一个问题来build议这个function。
无需破解设置。 有一个简单的方法:
print(df.to_string())
只需使用它来打印整个框架:
pd.set_option('display.max_columns', None) pd.set_option('display.max_rows', None)
也可以使用上下文pipe理器创build一个漂亮的打印function,就像上面的例子。
有关完整的有用选项列表,请参阅:
pd.describe_option('display')
几个使用的例子: http : //pandas.pydata.org/pandas-docs/stable/options.html