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

如何在Stata中基于家庭成员年龄计算家庭得分?

Stata 家庭得分计算实现方案

以下是满足需求的Stata命令步骤,逻辑清晰且易于验证:

核心命令序列

* 1. 按家庭计算所有成员的基础贡献总和
egen base_score = total(cond(Age > 14, 0.5, 0.3)), by(Household_ID)

* 2. 标记家庭是否存在年龄超过14岁的成员(1=存在,0=不存在)
egen has_adult = max(Age > 14), by(Household_ID)

* 3. 计算最终得分:基础分 + 额外加分(有成年成员则加0.5)
gen Score = base_score + has_adult * 0.5

* 可选:清理中间变量
drop base_score has_adult

命令说明

  • cond(Age > 14, 0.5, 0.3):对每个成员判断年龄,超过14岁贡献0.5,14岁及以下贡献0.3
  • total(..., by(Household_ID)):按家庭分组,把所有成员的贡献值求和得到基础得分
  • max(Age > 14, by(Household_ID)):检查家庭中是否有成员年龄>14,只要有一个就返回1,否则返回0
  • 最终得分通过基础分加上额外的0.5(当存在成年成员时)得到,同一家庭的所有成员会自动拥有相同的Score值

示例验证

以无子女的成年夫妇为例:

  • 两个成员年龄都>14,基础分总和为0.5 + 0.5 = 1
  • has_adult为1,额外加0.5,最终得分为1 + 0.5 = 1.5,符合需求描述

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.09 05:07:40