楼主: benbenbenben
3695 3

[数据管理求助] 如何删除观测值 [推广有奖]

  • 0关注
  • 0粉丝

本科生

25%

还不是VIP/贵宾

-

威望
0
论坛币
20 个
通用积分
0.0014
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
504 点
帖子
42
精华
0
在线时间
78 小时
注册时间
2005-11-10
最后登录
2017-2-13

楼主
benbenbenben 发表于 2014-6-17 16:02:40 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
有如下的一个data,
son_id        parent_id        variable 1        variable 2        variable 3        …
01                001                                
02                001                                
03                001                                
01                002                                
02                002                                
03                002                                
04                002                                

在此数据库下,父订单下包含子订单。
coding目的: 如果variable 2 或者 variable 3 任意一个是空值,就删除掉这个父订单(包含所有子订单)。
请问,这个coding 如何写呢,谢谢。
二维码

扫码加我 拉你入群

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

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

关键词:观测值 Variable Coding parent Arent 数据库 如何

沙发
benbenbenben 发表于 2014-6-18 02:07:54
有高手给指点一下吗

藤椅
benbenbenben 发表于 2014-6-18 15:47:48
跪求

板凳
SpencerMeng 在职认证  发表于 2014-12-27 23:17:24
楼主,你好。我想到了一个比较笨的方法但是可以操作成功。
先对这个var2 和var3中的缺失值赋值为0(用recode),然后对于var2,进行组内找最小值0,我们放在flag1这个变量中,找到了删除掉。同理对于var3也是。给您附上code,您一看就会明白的。
  1. clear
  2. inp sonid  parentid var1 var2 var3
  3. 01     001  23 23 42                              
  4. 02     001  23 12 42                             
  5. 03     001  67 78 45                             
  6. 01     002  53 75 45                              
  7. 02     002   3 . 34                             
  8. 03     002  42 . 42                             
  9. 04     002  24 87 .
  10. 01     003  12 23 .
  11. 02     003  3  24 23
  12. 03     003  2  23 .
  13. end


  14. recode var2 (.=0) //recode类似replace
  15. recode var3 (.=0)

  16. egen flag1=min(var2),by(parentid) //选出组内最小值
  17. drop if flag1==0
  18. drop flag1

  19. egen flag2=min(var3),by(parentid) //选出组内最小值
  20. drop if flag2==0
  21. drop flag2
复制代码

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

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