You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何编辑Pivot Table输出并设置小数位数以完整查看Jupyter表格?

透视表输出编辑与小数位数设置方案

一、优化透视表生成代码

你当前的代码重复调用np.percentile过于冗余,可以用np.arange生成百分位数序列简化,同时注意将index参数改为实际字段名tipo_de_viaje:

import numpy as np
import pandas as pd

# 生成10到100步长为10的百分位数列表
percentiles = np.arange(10, 101, 10)
pivot_df = df.pivot_table(
    values="ratio",
    index="tipo_de_viaje",
    aggfunc=lambda x: [np.percentile(x, p) for p in percentiles]
)
# 给列命名为对应百分位数,提升可读性
pivot_df.columns = [f"{p}%" for p in percentiles]

二、解决小数位数显示不全问题

方法1:全局设置Pandas显示精度

通过设置全局显示选项,让所有Pandas输出都固定小数位数(以保留2位为例,可按需修改):

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

设置后直接输出透视表,即可看到格式化后的结果。

方法2:单独格式化当前透视表

如果不想影响全局设置,仅对当前透视表做格式化:

# 方法A:用round函数直接修改数值
pivot_formatted = pivot_df.applymap(lambda x: round(x, 2))
display(pivot_formatted)  # Jupyter中用display显示更美观

# 方法B:用style格式化(支持更丰富的样式)
pivot_df.style.format("{:.2f}")

三、常用的透视表输出编辑操作

  • 自定义列名:通过pivot_df.columns = [...]为列设置更易读的名称
  • 重置索引:用pivot_df.reset_index()将行索引转为普通数据列
  • 排序:按指定列排序,例如pivot_df.sort_values(by="50%", ascending=False)
  • 筛选行:根据数值条件过滤,例如pivot_df[pivot_df["50%"] > 0.5]

内容的提问来源于stack exchange,提问作者Diego Triviño

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 06:25:27