option - 个性化显示设置

在线刷题

检查 or 强化 Pandas 数据分析操作?👉在线体验「Pandas进阶修炼300题」

Note

本页面代码可以在线编辑、执行

本页面数据说明

为了更好的介绍相关操作,本页面使用 某招聘数据 数据进行展开,你应该对数据字段、数值、类型等相关信息做一个大致了解!

import pandas as pd
data = pd.read_csv("data.csv")
data.head()
positionId positionName companyId companySize industryField financeStage companyLabelList firstType secondType thirdType ... plus pcShow appShow deliver gradeDescription promotionScoreExplain isHotHire count aggregatePositionIds famousCompany
0 6802721 数据分析 475770 50-150人 移动互联网,电商 A轮 ['绩效奖金', '带薪年假', '定期体检', '弹性工作'] 产品|需求|项目类 数据分析 数据分析 ... NaN 0 0 0 NaN NaN 0 0 [] False
1 5204912 数据建模 50735 150-500人 电商 B轮 ['年终奖金', '做五休二', '六险一金', '子女福利'] 开发|测试|运维类 数据开发 建模 ... NaN 0 0 0 NaN NaN 0 0 [] False
2 6877668 数据分析 100125 2000人以上 移动互联网,企业服务 上市公司 ['节日礼物', '年底双薪', '股票期权', '带薪年假'] 产品|需求|项目类 数据分析 数据分析 ... NaN 0 0 0 NaN NaN 0 0 [] False
3 6496141 数据分析 26564 500-2000人 电商 D轮及以上 ['生日趴', '每月腐败基金', '每月补贴', '年度旅游'] 开发|测试|运维类 数据开发 数据分析 ... NaN 0 0 0 NaN NaN 0 0 [] True
4 6467417 数据分析 29211 2000人以上 物流丨运输 上市公司 ['技能培训', '免费班车', '专项奖金', '岗位晋升'] 产品|需求|项目类 数据分析 数据分析 ... NaN 0 0 0 NaN NaN 0 0 [] True

5 rows × 52 columns

显示全部列

如下图所示👇,直接查看 data 会发现,由于数据维度较大,部分行列会被折叠,显示为 ... ,现在需要显示全部的列方便预览。

pd.set_option('display.max_columns', None) #显示全部列
# pd.set_option('display.max_rows', None) # 显示全部行

data.head()
positionId positionName companyId companySize industryField financeStage companyLabelList firstType secondType thirdType skillLables positionLables industryLables createTime formatCreateTime district businessZones salary workYear jobNature education positionAdvantage imState lastLogin publisherId approve subwayline stationname linestaion latitude longitude hitags resumeProcessRate resumeProcessDay score newScore matchScore matchScoreExplain query explain isSchoolJob adWord plus pcShow appShow deliver gradeDescription promotionScoreExplain isHotHire count aggregatePositionIds famousCompany
0 6802721 数据分析 475770 50-150人 移动互联网,电商 A轮 ['绩效奖金', '带薪年假', '定期体检', '弹性工作'] 产品|需求|项目类 数据分析 数据分析 ['SQL', '数据库', '数据运营', 'BI'] ['电商', '社交', 'SQL', '数据库', '数据运营', 'BI'] ['电商', '社交', 'SQL', '数据库', '数据运营', 'BI'] 2020/3/16 11:00 11:00发布 余杭区 ['仓前'] 37500 1-3年 全职 本科 五险一金、弹性工作、带薪年假、年度体检 today 2020/3/16 11:00 12022406 1 NaN NaN NaN 30.278421 120.005922 NaN 50 1 233 0 15.101875 NaN NaN NaN 0 0 NaN 0 0 0 NaN NaN 0 0 [] False
1 5204912 数据建模 50735 150-500人 电商 B轮 ['年终奖金', '做五休二', '六险一金', '子女福利'] 开发|测试|运维类 数据开发 建模 ['算法', '数据架构'] ['算法', '数据架构'] [] 2020/3/16 11:08 11:08发布 滨江区 ['西兴', '长河'] 15000 3-5年 全职 本科 六险一金,定期体检,丰厚年终 disabled 2020/3/16 11:08 5491688 1 NaN NaN NaN 30.188041 120.201179 NaN 23 1 176 0 32.559414 NaN NaN NaN 0 0 NaN 0 0 0 NaN NaN 0 0 [] False
2 6877668 数据分析 100125 2000人以上 移动互联网,企业服务 上市公司 ['节日礼物', '年底双薪', '股票期权', '带薪年假'] 产品|需求|项目类 数据分析 数据分析 ['数据库', '数据分析', 'SQL'] ['数据库', 'SQL'] [] 2020/3/16 10:33 10:33发布 江干区 ['四季青', '钱江新城'] 3500 1-3年 全职 本科 五险一金 周末双休 不加班 节日福利 today 2020/3/16 10:33 5322583 1 4号线 江锦路 4号线_城星路;4号线_市民中心;4号线_江锦路 30.241521 120.212539 NaN 11 4 80 0 14.972357 NaN NaN NaN 0 0 NaN 0 0 0 NaN NaN 0 0 [] False
3 6496141 数据分析 26564 500-2000人 电商 D轮及以上 ['生日趴', '每月腐败基金', '每月补贴', '年度旅游'] 开发|测试|运维类 数据开发 数据分析 [] ['电商'] ['电商'] 2020/3/16 10:10 10:10发布 江干区 NaN 45000 3-5年 全职 本科 年终奖等 threeDays 2020/3/16 10:10 9814560 1 1号线 文泽路 1号线_文泽路 30.299404 120.350304 NaN 100 1 68 0 12.874153 NaN NaN NaN 0 0 NaN 0 0 0 NaN NaN 0 0 [] True
4 6467417 数据分析 29211 2000人以上 物流丨运输 上市公司 ['技能培训', '免费班车', '专项奖金', '岗位晋升'] 产品|需求|项目类 数据分析 数据分析 ['BI', '数据分析', '数据运营'] ['BI', '数据运营'] [] 2020/3/16 9:56 09:56发布 余杭区 ['仓前'] 30000 3-5年 全职 大专 五险一金 disabled 2020/3/16 9:56 6392394 1 NaN NaN NaN 30.282952 120.009765 NaN 20 1 66 0 12.755375 NaN NaN NaN 0 0 NaN 0 0 0 NaN NaN 0 0 [] True

显示指定行/列

指定让 data 在预览时显示10列,7行

pd.set_option('display.max_columns', 10)  
pd.set_option('display.max_rows', 7)

data.head()
positionId positionName companyId companySize industryField ... promotionScoreExplain isHotHire count aggregatePositionIds famousCompany
0 6802721 数据分析 475770 50-150人 移动互联网,电商 ... NaN 0 0 [] False
1 5204912 数据建模 50735 150-500人 电商 ... NaN 0 0 [] False
2 6877668 数据分析 100125 2000人以上 移动互联网,企业服务 ... NaN 0 0 [] False
3 6496141 数据分析 26564 500-2000人 电商 ... NaN 0 0 [] True
4 6467417 数据分析 29211 2000人以上 物流丨运输 ... NaN 0 0 [] True

5 rows × 52 columns

还原行/列显示数

还原上面的显示设置

pd.reset_option("max_rows")
pd.reset_option("max_columns")

修改每列最大字符宽度

即每列最多显示的字符长度,例如【每列最多显示10个字符,多余的会变成...

pd.set_option('display.max_colwidth',10)
data.head()
positionId positionName companyId companySize industryField financeStage companyLabelList firstType secondType thirdType ... plus pcShow appShow deliver gradeDescription promotionScoreExplain isHotHire count aggregatePositionIds famousCompany
0 6802721 数据分析 475770 50-150人 移动互联网,电商 A轮 ['绩效奖金... 产品|需求|项目类 数据分析 数据分析 ... NaN 0 0 0 NaN NaN 0 0 [] False
1 5204912 数据建模 50735 150-500人 电商 B轮 ['年终奖金... 开发|测试|运维类 数据开发 建模 ... NaN 0 0 0 NaN NaN 0 0 [] False
2 6877668 数据分析 100125 2000人以上 移动互联网,... 上市公司 ['节日礼物... 产品|需求|项目类 数据分析 数据分析 ... NaN 0 0 0 NaN NaN 0 0 [] False
3 6496141 数据分析 26564 500-2000人 电商 D轮及以上 ['生日趴'... 开发|测试|运维类 数据开发 数据分析 ... NaN 0 0 0 NaN NaN 0 0 [] True
4 6467417 数据分析 29211 2000人以上 物流丨运输 上市公司 ['技能培训... 产品|需求|项目类 数据分析 数据分析 ... NaN 0 0 0 NaN NaN 0 0 [] True

5 rows × 52 columns

在线刷题

基于 option 修改显示设置并未修改数据,仅是在原有数据基础上优化显示状态,随时可以通过重置选项重置全部设置,恢复数据默认显示状态。

修改小数点精度

修改默认显示精度为小数点后5位

pd.set_option('precision', 5)

还原所有显示设置

还原上面的全部显示设置

pd.reset_option("^display")

忽略警告

取消pandas相关warning提示

pd.set_option("mode.chained_assignment", None) 
# 全局取消warning
# import warnings
# warnings.filterwarnings('ignore')

设置数值显示条件

例如,若数值小于 20 则显示为0

pd.set_option('chop_threshold', 20) 

支持 LaTex

dataframe中内容支持 Latex 显示(需要使用$$包住)

pd.set_option("display.html.use_mathjax",True)

修改默认绘图引擎

修改pandas默认绘图引擎为plotly(需要提前安装好plotly

pd.set_option("plotting.backend","plotly")

还原所有 option 设置

还原上面全部 option 设置

pd.reset_option("all") 
: boolean
    use_inf_as_null had been deprecated and will be removed in a future
    version. Use `use_inf_as_na` instead.
/opt/anaconda3/lib/python3.8/site-packages/pandas/_config/config.py:622: FutureWarning: 
: boolean
    use_inf_as_null had been deprecated and will be removed in a future
    version. Use `use_inf_as_na` instead.

  warnings.warn(d.msg, FutureWarning)