楼主: esijb
9541 11

[数据管理求助] 缺失值删除 [推广有奖]

  • 3关注
  • 2粉丝

硕士生

36%

还不是VIP/贵宾

-

威望
0
论坛币
990 个
通用积分
3.2500
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
595 点
帖子
47
精华
0
在线时间
249 小时
注册时间
2014-6-7
最后登录
2024-4-2

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
想删除某三个变量同时缺失的整行数据,该怎么操作呢?

比如:想删除 var1 var2 var3同时为缺失值的这条记录,也就是想删除第三行,其余记录保留
var1 var2 var3 var4
3        .      4      2
4       3      4      9
.        .       .      5
7       9      3      .
.        2      1      .

请教,该用什么命令呢?
二维码

扫码加我 拉你入群

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

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

关键词:缺失值 行数据 缺失值

沙发
317792209 在职认证  学生认证  发表于 2018-11-20 12:04:36 |只看作者 |坛友微信交流群
  1. * Example generated by -dataex-. To install: ssc install dataex
  2. clear
  3. input float(var1 var2 var3 var4)
  4. 3 . 4 2
  5. 4 3 4 9
  6. . . . 5
  7. 7 9 3 .
  8. . 2 1 .
  9. end
  10. replace var1=0 if var1==.
  11. replace var2=0 if var2==.
  12. replace var3=0 if var3==.
  13. gen newvar=var1+var2+var3
  14. drop if newvar==0

  15. replace var1=. if var1==0
  16. replace var2=. if var2==0
  17. replace var3=. if var3==0
复制代码


使用道具

藤椅
黃河泉 在职认证  发表于 2018-11-20 12:24:12 |只看作者 |坛友微信交流群
你若要问程序,永远附上相关资料;若附上资料,永远用 dataex 印出资料。
1.        先 ssc install dataex (并见说明),将原始 Stata 资料中具有”代表性”的一部分资料列出,以供有意回答者实验之用,并能提供具体操作指令。
2.        并请参考 http://www.jianshu.com/p/9870080fe769,  https://bbs.pinggu.org/thread-5048204-1-1.html, 与 https://bbs.pinggu.org/thread-5917273-1-1.html

使用道具

板凳
黃河泉 在职认证  发表于 2018-11-20 12:24:31 |只看作者 |坛友微信交流群
试试
  1. * Example generated by -dataex-. To install: ssc install dataex
  2. clear
  3. input float(var1 var2 var3 var4)
  4. 3 . 4 2
  5. 4 3 4 9
  6. . . . 5
  7. 7 9 3 .
  8. . 2 1 .
  9. end

  10. drop if mi(var1)&mi(var2)&mi(var3)
复制代码
已有 1 人评分经验 学术水平 热心指数 信用等级 收起 理由
317792209 + 100 + 5 + 5 + 5 精彩帖子

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

使用道具

报纸
317792209 在职认证  学生认证  发表于 2018-11-20 12:41:57 |只看作者 |坛友微信交流群


使用道具

地板
esijb 发表于 2018-11-20 13:33:37 |只看作者 |坛友微信交流群
317792209 发表于 2018-11-20 12:04
这个思路倒是没想过,谢谢!!

使用道具

7
esijb 发表于 2018-11-20 13:34:04 |只看作者 |坛友微信交流群
黃河泉 发表于 2018-11-20 12:24
试试
感谢!!!一下子就成功了

使用道具

8
蓝色 发表于 2018-11-20 14:11:10 |只看作者 |坛友微信交流群
  1. * Example generated by -dataex-. To install: ssc install dataex
  2. clear
  3. input float(var1 var2 var3 var4)
  4. 3 . 4 2
  5. 4 3 4 9
  6. . . . 5
  7. 7 9 3 .
  8. . 2 1 .
  9. end


  10. egen    newvar=rowmiss(var1-var4)
  11. drop if newvar~=0
复制代码


使用道具

9
esijb 发表于 2018-11-20 14:17:57 |只看作者 |坛友微信交流群
蓝色 发表于 2018-11-20 14:11
我删除存在缺失值的记录,想使用egen mis = rowmiss(_all)
             drop if mis
但不知道为什么出现了unknown egen function rowmiss()
                                r(133);

使用道具

10
317792209 在职认证  学生认证  发表于 2018-11-20 15:11:26 |只看作者 |坛友微信交流群
esijb 发表于 2018-11-20 14:17
我删除存在缺失值的记录,想使用egen mis = rowmiss(_all)
             drop if mis
但不知道为什么出 ...
dropmiss,obs any force.用这个命令,如果运行不了,首先ssc install dropmiss

使用道具

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

本版微信群
加好友,备注jltj
拉您入交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-5-18 02:53