楼主: 过儿。。
10336 7

[数据管理求助] stata分组变量中计算一个变量大于某个值的比例 计算后怎么分组补全 [推广有奖]

  • 3关注
  • 2粉丝

已卖:1份资源

硕士生

14%

还不是VIP/贵宾

-

威望
0
论坛币
534 个
通用积分
1.0004
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
1368 点
帖子
114
精华
0
在线时间
132 小时
注册时间
2013-3-28
最后登录
2017-3-14

楼主
过儿。。 发表于 2017-3-10 16:24:44 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
求大神解惑。
在家庭数据中求家庭中大于65岁人的比例。 家庭编号hhid和个人编号pline唯一确定一个个体。
数据和我写的命令如command所示 command.png
这样算出来的家庭中的老年人占比是不完整的 如图 结果.png

我自己做了填充使用的命令是bys hhid: replace old=old[_n-1]if old==.
                                             bys hhid: replace old=old[_n+1]if old==.
但是结果说equation [_n-1] not found  
求大神解答呀
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝


回帖推荐

黃河泉 发表于2楼  查看完整内容

沙发
黃河泉 在职认证  发表于 2017-3-10 18:44:29
  1. gen d = age >= 65 & !missing(age)
  2. bys hhid: egen s = sum(d)
  3. bys hhid: egen st = count(d)
  4. gen old = s/st
复制代码
  1. . list, sep(0)

  2.      +--------------------------------------------+
  3.      | hhid   pline   age   d   s   st        old |
  4.      |--------------------------------------------|
  5.   1. |    1       1    54   0   1    3   .3333333 |
  6.   2. |    1       2    67   1   1    3   .3333333 |
  7.   3. |    1       3     .   0   1    3   .3333333 |
  8.   4. |    2       1    69   1   1    2         .5 |
  9.   5. |    2       2    15   0   1    2         .5 |
  10.   6. |    3       1    66   1   1    2         .5 |
  11.   7. |    3       2    59   0   1    2         .5 |
  12.      +--------------------------------------------+
复制代码

藤椅
过儿。。 发表于 2017-3-10 21:31:57
黃河泉 发表于 2017-3-10 18:44
太感谢啦大神、、、、救命恩人谢谢谢谢  治好了多年的老寒腿

板凳
黃河泉 在职认证  发表于 2017-3-11 07:20:42
过儿。。 发表于 2017-3-10 21:31
太感谢啦大神、、、、救命恩人谢谢谢谢  治好了多年的老寒腿
这是所谓的药到病除吗?哈哈!

报纸
过儿。。 发表于 2017-3-11 11:00:15
黃河泉 发表于 2017-3-11 07:20
这是所谓的药到病除吗?哈哈!
请受我一拜

地板
morning-li 发表于 2018-8-16 22:06:15
黃河泉 发表于 2017-3-10 18:44
黄老师,如果age是缺失的话d会等于0哦。age缺失的部分不应该计入分母才对。

我认为正确的写法应该是
gen d = (age >= 65)  if !missing(age)
bys hhid: egen s = sum(d)
bys hhid: egen st = count(d) if !missing(d)
gen old = s/st

欢迎大家讨论
已有 1 人评分学术水平 热心指数 信用等级 收起 理由
黃河泉 + 3 + 3 + 3 我很赞同

总评分: 学术水平 + 3  热心指数 + 3  信用等级 + 3   查看全部评分

7
黃河泉 在职认证  发表于 2018-8-17 07:18:24
morning-li 发表于 2018-8-16 22:06
黄老师,如果age是缺失的话d会等于0哦。age缺失的部分不应该计入分母才对。

我认为正确的写法应该是
谢谢指证,我赞成你的讲法 (当初没想仔细)。

8
7911665599 发表于 2019-12-4 20:29:19
请问pline中的数据有21,有1,有22,这是什么意思啊?

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注jltj
拉您入交流群
GMT+8, 2026-1-20 16:25