楼主: 晗小晗
10717 4

[一般统计问题] 执行gen if 语句时总提示“{ required”是为什么? [推广有奖]

  • 0关注
  • 2粉丝

本科生

33%

还不是VIP/贵宾

-

威望
0
论坛币
10 个
通用积分
0.0133
学术水平
5 点
热心指数
5 点
信用等级
0 点
经验
276 点
帖子
25
精华
0
在线时间
120 小时
注册时间
2013-11-27
最后登录
2021-9-27

楼主
晗小晗 发表于 2016-8-22 17:20:37 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币

求助。

写了一段指令,如下:
gen skipcon=0
if ba002_1>1960 & (da001==1|da001==2|da002==1|da002==2) & da003==2 ///
& da004==2 & (da005_1_==2& da005_2_==2& da005_3_==2& da005_4_==2& da005_5_==2) ///
&((da007_1_==2& da007_2_==2& da007_3_==2& da007_4_==2& da007_5_==2& da007_6_==2& da007_7_==2 ///
&da007_8_==2& da007_9_==2& da007_10_==2& da007_11_==2& da007_12_==2& da007_13_==2& da007_14_==2) ///
|(da008_1_==2& da008_5_==2& da008_11_==2))


执行以后会生成skipcon值全为0,然后提示{ required。

求好心人指教为什么以及怎么办?

挺急的。

多谢多谢!
二维码

扫码加我 拉你入群

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

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

关键词:required require Equi red qui required

沙发
夏目贵志 发表于 2016-8-22 23:50:52
你这个命令太长了。。。建议拆分成几个部分来写。试试这个看看是不是一样的结果。
gen skipcon=0 if ba002_1>1960 & (da001==1|da001==2|da002==1|da002==2)
replace skipcon=. if !(da003==2 & da004==2 )
replace skipcon=. if !(da005_1_==2 & da005_2_==2 & da005_3_== 2 & da005_4_==2 & da005_5_==2)
gen mark=1 if da007_1_==2& da007_2_==2& da007_3_==2& da007_4_==2& da007_5_==2& da007_6_==2& da007_7_==2
replace mark=. if !(da007_8_==2& da007_9_==2& da007_10_==2& da007_11_==2& da007_12_==2& da007_13_==2& da007_14_==2)
replace skipcon=. if !(mark==1 |(da008_1_==2& da008_5_==2& da008_11_==2))
已有 1 人评分经验 收起 理由
Captain-CUI + 20 热心帮助其他会员

总评分: 经验 + 20   查看全部评分

藤椅
austen06 发表于 2016-8-23 07:16:21
没明白楼主想要写什么,不过建议楼主关注一下类似inlist()之类的函数,可以简化你的众多条件。

板凳
晗小晗 发表于 2016-8-24 15:49:14
夏目贵志 发表于 2016-8-22 23:50
你这个命令太长了。。。建议拆分成几个部分来写。试试这个看看是不是一样的结果。
gen skipcon=0 if ba002 ...
好的,去试一下!谢谢~

报纸
晗小晗 发表于 2016-8-24 15:49:43
austen06 发表于 2016-8-23 07:16
没明白楼主想要写什么,不过建议楼主关注一下类似inlist()之类的函数,可以简化你的众多条件。
好,去学看一下,感觉就是会的太少所以只能用最原始的。谢谢!

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

本版微信群
加好友,备注jltj
拉您入交流群
GMT+8, 2025-12-29 18:36