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

基于缺失数据占比的分箱统计实现方案咨询

客户月度记录缺失占比区间统计实现方案

需求背景

拥有2000-10至2005-03期间的月度客户记录,该时间段总计应为54条月度记录。需按0%、小于1%、小于5%、小于10%、大于10%的缺失占比区间,统计各区间的客户数量。


实现步骤(基于Pandas)

以下是完整的代码实现逻辑,可直接适配你的数据集:

1. 统计每个客户的实际记录条数

先按客户ID分组,统计每个客户的现有记录数量:

import pandas as pd

# 示例数据(替换为你的真实数据集)
df = pd.DataFrame({
    'cust_id': [1,1,1,1,1,1,2,2,2,2,2],
    'period' : [200010,200011,200012,200101,200102,200103,200010,200011,200012,200101,200103],
    'volume' : [1,2,3,4,5,6,7,8,9,10,12],
    'num_transactions': [3,4,5,6,7,8,9,10,11,12,13]
})

# 按客户ID分组,统计实际记录数
cust_record_counts = df.groupby('cust_id').size().reset_index(name='actual_count')

2. 计算每个客户的记录缺失占比

该时间段总计54条月度记录,以此为基准计算缺失占比(百分比):

total_expected_records = 54

# 计算缺失占比:(总应记录数 - 实际记录数) / 总应记录数 * 100
cust_record_counts['missing_pct'] = (total_expected_records - cust_record_counts['actual_count']) / total_expected_records * 100

3. 按指定区间统计客户数量

根据需求的区间规则,筛选并统计各区间的客户数:

# 初始化结果字典
interval_counts = {}

# 统计0%缺失的客户数
interval_counts['0%'] = len(cust_record_counts[cust_record_counts['missing_pct'] == 0])

# 统计缺失占比>0且<1%的客户数
interval_counts['小于1%'] = len(cust_record_counts[(cust_record_counts['missing_pct'] > 0) & (cust_record_counts['missing_pct'] < 1)])

# 统计缺失占比≥1%且<5%的客户数
interval_counts['小于5%'] = len(cust_record_counts[(cust_record_counts['missing_pct'] >= 1) & (cust_record_counts['missing_pct'] < 5)])

# 统计缺失占比≥5%且<10%的客户数
interval_counts['小于10%'] = len(cust_record_counts[(cust_record_counts['missing_pct'] >= 5) & (cust_record_counts['missing_pct'] < 10)])

# 统计缺失占比≥10%的客户数
interval_counts['大于10%'] = len(cust_record_counts[cust_record_counts['missing_pct'] >= 10])

# 转换为DataFrame格式,方便查看结果
result_df = pd.DataFrame(list(interval_counts.items()), columns=['缺失占比区间', '客户数量'])
print(result_df)

示例数据输出结果

针对你提供的示例数据,两个客户的实际记录数分别为6和5,缺失占比均远大于10%,输出结果如下:

缺失占比区间  客户数量
0       0%      0
1    小于1%      0
2    小于5%      0
3   小于10%      0
4   大于10%      2

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.13 04:40:59