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

合并不同尺寸DataFrame绘制列差值时保留缺失行与Region列的方法

解决方案

1. 调整merge逻辑保留全量行

你之前合并时默认用了内连接(inner join),只会保留两个表共有的Region值,因此美拉尼西亚的记录会被过滤。调整为以Region_education_0为左表的左连接即可保留全部5条记录:

# 合并时指定左连接,同名字段自动加后缀区分
merged_df = pd.merge(
    left=Region_education_0,
    right=Region_education_1,
    on="Region",
    how="left", # 核心参数:保留左表全部行
    suffixes=("_edu0", "_edu1")
)
# 计算薪资差值,缺失的Region_education_1薪资可按需填充为0或保留NaN
merged_df["Diff_HigherEd_Vals"] = merged_df["ConvertedComp_edu0"] - merged_df["ConvertedComp_edu1"].fillna(0)

2. 调整style.bar参数保留Region列

style.bar的subset参数是指定需要渲染条形图的列,不是指定要展示的列。只要你没有主动删除Region列、也没有在样式设置里隐藏该列,默认就会正常展示:

# 仅给差值列加条形图,Region列默认保留显示
merged_df.style.bar(
    subset=["Diff_HigherEd_Vals"], # 不要把Region加进subset,不需要给文本列加条形图
    align="mid",
    color=["#ff6b6b", "#4ecdc4"]
)

常见踩坑排查

  • 如果你之前合并后把Region设为了索引,调用merged_df = merged_df.reset_index()把Region恢复为普通列即可正常展示
  • 不要把Region加入hide_columns参数列表,否则会被主动隐藏

内容的提问来源于stack exchange,提问作者Jaswanth gannamaneni

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 01:48:03