Pandas中八个常用option设置的示例详解

沈亦白
沈亦白
发布时间:2026-10-15| 6人浏览过
原创

本文详解Pandas中8个常用的set_option配置,涵盖最大行数、列数、列宽、浮点精度、数字格式化及绘图后端等设置。通过调整display相关参数,可优化交互式数据展示效果,提升数据分析效率。

前言

在使用Pandas进行交互式表格(DataFrame)展示与分析时,默认的表格格式往往不够友好。为了获得更清晰的视觉效果,合理的格式配置显得尤为重要。

这些显示痛点可以通过Pandas的option机制轻松解决。只需编写少量代码进行预先配置,即可实现全局生效,无需重复操作,极大提升使用体验。

# 使用方法
import pandas as pd
pd.set_option()
pd.get_option()
# 使用属性,例如展示的最大行数
pd.option.display.max_rows

本文整理了8个高频使用的配置选项,供读者参考。掌握这些代码片段后,下次可直接复制粘贴使用,显著提升工作效率。

  • 显示更多行
  • 显示更多列
  • 改变列宽
  • 设置float列的精度
  • 数字格式化显示
  • 更改绘图方法
  • 配置info()的输出
  • 打印出当前设置并重置所有选项

1. 显示更多行

默认情况下,Pandas会限制表格在屏幕内的显示范围。当数据行数过多时,系统会自动截断中间部分,仅显示首尾少量行。通过设置display.max_rows参数,可以控制允许显示的最大行数,例如将其设置为200。

pd.set_option('display.max_rows', 200)
# pd.options.display.max_rows = 200

当实际行数超过display.max_rows设定的阈值时,display.min_rows参数将决定具体显示多少行。由于display.min_rows默认值为5,因此示例中仅展示前5行和最后5行,中间数据以省略号形式隐藏。

用户可根据个人习惯自定义显示行数,例如设置为10或20等数值。

pd.set_option('display.min_rows', 10)
# pd.options.display.min_rows = 10

此外,还可以直接执行重置操作恢复默认设置。

# 重置
pd.reset_option('display.max_rows')

2. 显示更多列

与行数控制类似,列数也可通过display.max_columns参数进行控制,其默认值为20。

pd.get_option('display.max_columns')  
# pd.options.display.max_columns
20

3. 改变列宽

Pandas对列中显示的字符数量设有默认限制,通常为50个字符。若单元格内容过长,超出部分将显示为省略号。若需完整显示所有字符,可调整display.max_colwidth参数,例如将其设置为500。

pd.set_option ('display.max_colwidth',500)
# pd.options.display.max_colwidth = 500

4. 设置float列的精度

对于浮点型(float)数据,Pandas默认仅保留小数点后6位。通过预先设置display.precision,可以指定显示的位数,例如仅显示2位,从而避免后续重复配置。

pd.set_option( 'display.precision',2)
# pd.options.display.precision = 2

需注意,该设置仅影响浮点列的视觉展示,不会改变底层数据的实际精度。

5. 数字格式化显示

Pandas提供了display.float_format选项,用于格式化所有浮点列。该选项仅适用于浮点类型,若需对其他数据类型应用此格式,必须先将其转换为浮点数。

用逗号格式化大值数字

例如,数值1200000直接显示较为不便,通过添加逗号分隔符可提升可读性。

pd.set_option('display.float_format','{:,}'.format)

设置数字精度

此功能与display.precision类似。若仅需关注小数点后2位,可通过以下方式进行格式化设置。

pd.set_option('display.float_format',  '{:,.2f}'.format)

百分号格式化

若需展示百分比数据,可进行如下配置。

pd.set_option('display.float_format', '{:.2f}%'.format)

同样地,也可添加其他货币符号等前缀或后缀,只需在大括号{}前后添加相应字符即可。

6. 更改绘图方法

默认情况下,Pandas使用matplotlib作为绘图后端。自0.25版本起,Pandas支持切换至其他后端,如plotly、bokeh等第三方库,但前提是需要预先安装这些库。

配置过程十分简便,安装好第三方库后,仅需一行代码即可完成切换。

import pandas as pd
import numpy as np
pd.set_option('plotting.backend', 'altair')
data = pd.Series(np.random.randn(100).cumsum())
data.plot()

7. 配置info()的输出

在Pandas中,经常使用info()方法快速查看DataFrame的数据概况。然而,该方法对分析的最大列数存在默认限制。此外,若数据集中包含null值,在大数据集上进行计数统计时会导致速度显著变慢。

Pandas提供了两种相关配置选项:

  • display.max_info_columns:用于设置分析的最大列数,默认值为100。
  • display.max_info_rows:用于设置计数null值时的行数阈值,默认值为1690785。

例如,在分析包含150个特征的数据集时,可将display.max_info_columns设置为涵盖所有列的值,如200。

pd.set_option('display.max_info_columns', 200)

在处理大型数据集时,df.info()因需计算所有null值而导致运行缓慢。因此,可将display.max_info_rows设置为较小值以跳过计数,例如仅在行数不超过5时才进行null值统计。

pd.set_option('display.max_info_rows', 5)

8. 打印出当前设置并重置所有选项

pd.describe_option()函数将打印出当前配置的描述及其具体数值。

pd.describe_option()

用户还可以查询特定选项,例如关于行显示的详细设置。

# 具体的搜索
pd.describe_option('rows')

最后,可以直接执行重置操作,恢复所有选项为默认状态。

pd.reset_option('all')

以上介绍了8个常用set_option的使用方法,下方进行了汇总,方便用户直接复制使用。

pd.set_option('display.max_rows',xxx) # 最大行数
pd.set_option('display.min_rows',xxx) # 最小显示行数
pd.set_option('display.max_columns',xxx) # 最大显示列数
pd.set_option ('display.max_colwidth',xxx) #最大列字符数
pd.set_option( 'display.precision',2) # 浮点型精度
pd.set_option('display.float_format','{:,}'.format) #逗号分隔数字
pd.set_option('display.float_format',  '{:,.2f}'.format) #设置浮点精度
pd.set_option('display.float_format', '{:.2f}%'.format) #百分号格式化
pd.set_option('plotting.backend', 'altair') # 更改后端绘图方式
pd.set_option('display.max_info_columns', 200) # info输出最大列数
pd.set_option('display.max_info_rows', 5) # info计数null时的阈值
pd.describe_option() #展示所有设置和描述
pd.reset_option('all') #重置所有设置选项

以上就是Pandas中八个常用option设置的示例详解的详细内容,更多关于Pandas option设置的资料请关注本站其它相关文章!

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。