楼主: zzthaze
2676 3

[新手尝试] stata数据分析,如何设定一个变量training,其中的个体至少有一个是1,则为1 [推广有奖]

  • 0关注
  • 0粉丝

初中生

76%

还不是VIP/贵宾

-

威望
0
论坛币
0 个
通用积分
0.1500
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
89 点
帖子
6
精华
0
在线时间
25 小时
注册时间
2021-6-27
最后登录
2023-7-13

楼主
zzthaze 发表于 2021-6-27 16:32:17 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
一个比较大的数据库,将个人层面的信息通过id与机构层面的数据库merge了起来,想在机构层面生成一个与培训有关的变量training,如果某个机构中至少有一个人接受过培训(已经有一个个人是否接受过培训0-1变量),则training为1,如果没有至少一个人介绍过培训,则为0,这个怎么写命令啊,蟹蟹呜呜呜
二维码

扫码加我 拉你入群

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

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

关键词:Training STATA数据 Train Stata ning Stata stata笔记 Stata专版 STATA基础入门知识 stata命令

沙发
奔跑de土豆 发表于 2021-7-3 01:33:51
用且就可以了,gen new=1 if training==1&jigou==1,不过你要有机构变量才行

藤椅
ineedfabulous12 发表于 2021-7-5 10:04:38
按照楼主的意思 其实你是想 分id(机构识别号)利用个人层面数据统计各个机构中 接受培训的总人数 然后根据总人数情况 设定机构层面training变量
我觉得可以试试下面的思路(stata 命令)
collapse (sum)  total_T, by(id)    // 利用个人层面数据统计每个机构参加培训的总人数 其中id是每个个体所属的机构 total_T是个体层面是否接受培训的变量 为0-1型
merge 1:1 id using institution.dta   // 利用id和机构层面数据合并 这里假设institution是机构层面数据
gen training=1  // 生成新变量training=1
replace training=0 if total_T<1  // 将培训人数小于1的置为0
要注意的就是数据清洗过程 比如确保 total_T不可能为负数

板凳
zzthaze 发表于 2021-8-4 22:23:40
ineedfabulous12 发表于 2021-7-5 10:04
按照楼主的意思 其实你是想 分id(机构识别号)利用个人层面数据统计各个机构中 接受培训的总人数 然后根据 ...
是的!是这样!蟹蟹!!!

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

本版微信群
扫码
拉您进交流群
GMT+8, 2026-1-28 17:47