💡 作者:韩信子 @ShowMeAI
📘 数据分析实战系列:http://www.showmeai.tech/tutorials/40
📘 本文地址:http://www.showmeai.tech/article-detail/285
📢 申明:版权所有,转载请分割平台与作者并注明出处
📢 珍藏 ShowMeAI 查看更多精彩内容
📌 Pandas 数据显示的问题
咱们在利用 Python 进行 数据分析开掘和机器学习 时,最罕用的工具库就是 Pandas,它能够帮忙咱们快捷地进行数据处理和剖析。
对 Pandas 不相熟的同学,肯定要学习下这个宝藏工具库哦!ShowMeAI 给大家做了一个详尽的教程,能够在 📘 Python 数据分析教程 中查看,咱们同时也制作了 📘 Pandas 速查表,不便大家疾速查找须要的性能。如果你喜爱跟着视频学习,那么举荐 B 站这个 📘 疾速实战教程。
但在应用 Pandas 时,咱们常常会遇到像上面这样一些问题,它很影响咱们查看数据理解详情。
🔔 长文本无奈显示全
对于十分长的字段可能显示不全,如下图中,URL 被缩短显示。
🔔 迷信计数法显示失去细节
Pandas 默认应用『迷信计数法』显示大浮点数,例如 1000000.5
显示为 1.000e+06
。对于数值较大的数字,就可能有如下的显示,这导致咱们看不到具体数值。
![](https://p3-juejin.byteimg.com…e” width=”30%” referrerpolicy=”no-referrer”>
🔔 小数位精度不统一
对于浮点型的字段列,Pandas 可能有不同的位精度。例如下图中,col_1
准确到小数点后一位,而 col_2
准确到小数点后三位。有时候精度的不统一可能会有信息的差别。
在本篇内容中,ShowMeAI 将介绍如何应用 Pandas 自定义设置来解决诸如上述的问题。次要的设置包含上面内容:
- 自定义要显示的行数
- 自定义要显示的列数
- 自定义列宽
- 使浮点列之间的小数位精度保持一致
- 禁用迷信记数法
- 其余用法
留神:以上设置仅更改数据的显示出现形式,理论并不会影响 Dataframe 存储的数据。
📌 Pandas 自定义显示设置
💡 自定义显示行数
打印大 Dataframe(行列数很多的数据)时,Pandas 默认显示前 5 行和后 5 行,如下图所示。
咱们能够通过设置显示选项 display.max_rows
来更改要显示的行数,比方咱们将其设置为 4。
pd.set_option("diaply.max_row", 4)
df
咱们能够应用重置选项 pd.reset_option("display.max_rows")
复原默认行数显示设置。
💡 自定义显示列数
同样的情理,咱们能够通过设置 display.max_columns
自定义输入 Dataframe 时要显示的列数。
pd.set_option("diaply.max_columns", 6)
df
咱们甚至能够设置 pd.set_option('display.max_columns',
` `None)
来显示所有列(然而大家须要留神一下内存应用,这个操作可能让 Jupyter Notebook 一下占用特地多资源)。
咱们同样能够应用 pd.reset_option("display.max_columns")
重置返回到默认设置。
💡 自定义列宽
在下图中,咱们看不到前两行的全文,因为它们的字符太长(长度超过了 50)。
咱们把设置 display.max_colwidth
调整到 70,就能够看到全文了,如下图所示。
pd.set_option("diaply.max_colwidth", 70)
df
对这个设置重置的操作仍旧是pd.reset_option("display.max_colwidth")
。
💡 设置字段小数位精度统一
后面提到的一个例子中,col_1
和 col_2
的小数位精度不统一:
咱们能够通过设置 display.float_format
至 "{:.2f}".format
使格局统一,如下图所示。
该选项只会影响浮点列,而不影响整数列。
pd.set_option("diaply.float_format", "{:.2f}".format)
df
对这个设置重置的操作是 pd.reset_option("display.float_format")
💡 禁用迷信计数法
Pandas 默认以迷信计数法显示较大的浮点值。
通过设置 display.float_format
至 "{:,.2f}".format
,咱们能够为千位增加分隔符。
pd.set_option("diaply.float_format", "{:,.2f}".format)
df
咱们甚至能够增加货币符号在数值后面,比方咱们把 display.float_format
设置为 "$ {:,.2f}".format
,失去如下后果:
pd.set_option("diaply.float_format", "$ {:,.2f}".format)
df
💡 其余设置
下面列到的是一些最罕用的设置,如果咱们记不住这些设置名称,或者咱们想理解全副能够调整的显示设置,能够怎么办呢?实际上大家能够借助 pd.describe_option()
取得所有可用显示设置的列表。
针针对某个特定的显示设置,能够在 pd.describe_option()
中传入想调整的显示设置名称来获取应用细节,例如咱们运行 pd.describe_option("max_rows")
将打印形容 display.max_rows
应用细节,如下图所示。
pd.describe_option("max_rows")
参考资料
- 📘 Pandas 设置选项: https://pandas.pydata.org/docs/user_guide/options.html
- 📘 Python 数据分析教程: http://www.showmeai.tech/tutorials/33
- 📘 Pandas 速查表: http://www.showmeai.tech/article-detail/101
- 📘 Pandas 疾速实战教程: https://www.bilibili.com/video/BV1M64y187bz