我在终端上经常使用 Series 和 DataFrames。系列的默认__repr__
返回减少的样本,具有一些头和尾值,但其余部分丢失。
有没有一种内置方法可以漂亮地打印整个 Series / DataFrame?理想情况下,它将支持适当的对齐方式,可能会支持列之间的边界,甚至可能会为不同的列进行颜色编码。
您还可以将option_context
与一个或多个选项一起使用:
with pd.option_context('display.max_rows', None, 'display.max_columns', None): # more options can be specified also
print(df)
这将使选项自动返回其先前的值。
如果您正在使用 jupyter-notebook,那么使用display(df)
而不是print(df)
会使用富含 jupyter 的显示逻辑(像这样) 。
无需修改设置。有一个简单的方法:
print(df.to_string())
当然,如果出现很多情况,请创建一个类似这样的功能。您甚至可以将其配置为在每次启动 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
这样的东西会很好。您总是可以创建一个问题来建议此功能。