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

如何合并多个pandas DataFrame指定列的value_counts统计结果

实现代码

import pandas as pd

# 先将分组名和对应DataFrame建立映射,避免重复写逻辑
group_df_map = {
    "AB": df_AB,
    "AC": df_AC,
    "AD": df_AD,
    "AE": df_AE,
    "AF": df_AF,
    "AG": df_AG
}

result_list = []
for group_name, df in group_df_map.items():
    count_res = df["is_valid"].value_counts()
    # 构造每行统计数据,无对应布尔值时默认补0
    result_list.append({
        "Group": group_name,
        "is_valid_True_Count": count_res.get(True, 0),
        "is_valid_False_Count": count_res.get(False, 0)
    })

# 转换为最终结果表
df_result = pd.DataFrame(result_list)

原代码问题说明

你之前的写法是给value_counts()返回的统计Series直接新增group字段,这会让原本索引为True/False的Series多了一个group索引项,无法直接拼接为按分组一行展示的结构。上述写法将每个分组的统计结果统一构造成字典再合并,即可得到符合要求的输出。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 02:54:04