这篇文章将为大家详细讲解有关如何打印pandas DataFrames和Series,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一、前言当我们必须处理可能有多个列和行的大型DataFrames时,能够以
这篇文章将为大家详细讲解有关如何打印pandas DataFrames和Series,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
当我们必须处理可能有多个列和行的大型DataFrames时,能够以可读格式显示数据是很重要的。这在调试代码时非常有用。
默认情况下,当打印出DataFrame且具有相当多的列时,仅列的子集显示到标准输出。 显示的列甚至可以多行打印出来。
假设我们有以下DataFrame:
import pandas as pd import numpy as npdf = pd.DataFrame( np.random.randint(0, 100, size=(100, 25)), columns=[f'column{i}' for i in range(0, 25)])print(df)
现在,如果列数超过显示选项display.max_rows的值,则输出DataFrame可能不完整,如下所示。 仅显示一部分列(缺少第4列和第5列),而其余列以多行方式打印。
尽管输出仍可读取,但绝对不建议保留列或将其打印在多行中。
如果您的显示器足够宽并且能够容纳更多列,则可能需要调整一些显示选项。 我将在下面使用的值可能不适用于您的设置,因此请确保对其进行相应的调整。 就个人而言,我使用超宽显示器,可以在必要时打印出相当多的列。
如何在同一行打印所有列
现在,为了显示所有的列(如果你的显示器能够适合他们),并在短短一行所有你需要做的是设置显示选项expand_frame_repr为False:
pd.set_option('expand_frame_repr', False)
display.expand_frame_repr 默认值:True
是否跨多行打印宽数据的完整DataFrame ,可以考虑使用max_columns,但是如果宽度超过display.width,则输出将在多个“页面”中回绕。
另外,您可以更改display.max_rows的值,而不是将expand_frame_repr设置为False:
pd.set_option(‘display.max_rows', False)
如果列仍打印在多页中,那么您可能还必须调整display.width。
现在,如果您的DataFrame包含的行数超过一定数目,那么将仅显示一些记录(来自df的头部和尾部):
import pandas as pd import numpy as npdf = pd.DataFrame( np.random.randint(0, 5, size=(100, 4)), columns=[f'column{i}' for i in range(0, 4)])print(df)# column0 column1 column2 column3# 0 4 0 0 0# 1 2 2 4 2# 2 2 4 0 2# 3 0 0 0 4# 4 3 4 3 3# .. ... ... ... ...# 95 3 1 1 2# 96 1 4 0 0# 97 0 3 2 1# 98 3 3 4 2# 99 0 3 0 3# [100 rows x 4 columns]
如果要显示更大范围(甚至全部)的行,则需要将display.max_rows设置为要输出的行数。 如果要显示所有行,请将其设置为“None”:
pd.set_option('display.max_rows', None)
更好的方法是使用option_context(),它是一个上下文管理器,可用于在with语句上下文中临时设置特定选项。
import pandas as pd import numpy as npdf = pd.DataFrame( np.random.randint(0, 100, size=(100, 25)), columns=[f'column{i}' for i in range(0, 25)])with pd.option_context('expand_frame_repr', False, 'display.max_rows', None): print(df)
您可以调整更多显示选项,并更改Pandas DataFrames的显示方式。
display.max_colwidth:这是显示列名的最大字符数。 如果某个列名溢出,则将添加一个占位符(…)。
pd.set_option('display.max_colwidth', None)
display.precision:这是将用于浮点数的精度。 它指定小数点后的位数。
display.width:这是显示字符的总数。 如果要显示更多列,则可能有时还必须调整display.width。
您可以使用describe_option()找到完整的显示列表:
pd.describe_option(‘display') .
给Jupyter用户的注意事项
如果您正在使用Jupyter Notebooks,而不是print(df),只需使用display(df)即可相应地调整宽度。
关于“如何打印Pandas DataFrames和Series”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
--结束END--
本文标题: 如何打印Pandas DataFrames和Series
本文链接: https://www.lsjlt.com/news/278508.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
下载Word文档到电脑,方便收藏和打印~
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0