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

使用R计算家庭应获补贴收入:处理hh_income为0的场景

家庭收入修正实现方案(Pandas)

以下是针对需求的具体实现代码,基于Python的Pandas库:

方法1:直接针对收入为0的行替换

import pandas as pd

# 假设你的数据框名为df
# 1. 计算每个家庭的人数,生成hh_id到人数的映射字典
household_count = df.groupby('hh_id').size().to_dict()

# 2. 对所有hh_income为0的行,替换为对应家庭人数×175
df.loc[df['hh_income'] == 0, 'hh_income'] = df.loc[df['hh_income'] == 0, 'hh_id'].map(household_count) * 175

方法2:先定位收入为0的家庭再统一替换(适合家庭内收入值一致的场景)

如果同一家庭的hh_income值是统一的(即不会出现同一家庭部分行收入为0、部分不为0的情况),可以用更高效的方式:

# 1. 筛选出所有收入为0的家庭ID
zero_income_households = df[df['hh_income'] == 0]['hh_id'].unique()

# 2. 计算这些家庭的人数映射
target_hh_size = df[df['hh_id'].isin(zero_income_households)].groupby('hh_id').size().to_dict()

# 3. 批量替换这些家庭的收入值
df.loc[df['hh_id'].isin(zero_income_households), 'hh_income'] = df['hh_id'].map(target_hh_size) * 175

说明

  • groupby('hh_id').size()用于统计每个家庭的成员数量;
  • map()方法可以快速将hh_id对应到家庭人数;
  • loc用于精准定位需要修改的行和列,确保只修改符合条件的数据。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.22 17:45:49