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

Python中如何对DataFrame列使用正则表达式进行groupby分组统计

解决方案

你之前的代码逻辑存在问题:clientesv.COBERTURA.str.contains(r'\A', regex=True)返回的是布尔值序列(所有非空字符串都匹配\A即字符串开头的规则),只能得到True/False两组结果,自然无法实现按不同首字母分组的需求。

方法1:直接提取首字母分组(最简便)

直接提取COBERTURA列的第一个字符作为分组键即可:

# 可选:先过滤掉空值/空字符串避免统计异常
clientesv = clientesv[clientesv['COBERTURA'].str.strip().astype(bool)]
# 按首字母分组统计
res = clientesv.groupby(clientesv['COBERTURA'].str[0]).size()

方法2:正则提取分组(适配更复杂场景)

如果需要严格匹配开头的大写字母、自动过滤开头的特殊字符/空格,可以用正则提取规则实现:

res = clientesv.groupby(clientesv['COBERTURA'].str.extract(r'^([A-Z])', expand=False)).size()

以上两种方法得到的res就是你需要的按首字母聚合的统计结果,会自动汇总A、B、C、D、E、M对应所有子类别的总量。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 18:45:03