楼主: beanbean1030
2460 4

用stata循环还是有一个命令 [推广有奖]

  • 0关注
  • 1粉丝

硕士生

62%

还不是VIP/贵宾

-

威望
0
论坛币
2442 个
通用积分
0
学术水平
0 点
热心指数
1 点
信用等级
0 点
经验
2114 点
帖子
133
精华
0
在线时间
110 小时
注册时间
2011-2-24
最后登录
2019-6-2

楼主
beanbean1030 发表于 2012-4-24 10:21:34 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
各位,跪求解答,有这样一个变量,模式如下:
1
1
1
1
0
1
0
1
1
0
各位,如何能保留所有
1
0
的观察值?有没有一个简单命令,还是要循环?
二维码

扫码加我 拉你入群

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

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

关键词:Stata tata 求解答 有没有 如何

沙发
beanbean1030 发表于 2012-4-24 10:22:48
即相邻的两个观察值分别为1和0就保留,否则删除。有没有这样一个命令啊?

藤椅
beanbean1030 发表于 2012-4-24 10:46:34
顶一下,急切想知道。

板凳
sungmoo 发表于 2012-4-24 12:39:46
*只保留"先1后0"的相邻两个观测值

keep if (x&!x[_n+1])|(!x&x[_n-1]&(x[_n-1]<.))

*附:设x是数值型变量

if x
等价于
if x!=0

if !x
等价于
if x==0

Stata可以把普通的数值型变量理解为逻辑型变量(该型变量有且只有两值:“真”与“假”):将非零值理解为“真”,将零值理解为“假”;同时把逻辑型变量理解为特定的数值型变量(即0-1变量:"1"代表"真","0"代表"假")。于是,在表达逻辑值意义上,一个数值型变量唯一对应一个0-1变量(非零值对应1,零值对应0)。Stata处理逻辑型变量本质上只是处理0-1变量。

对于某观测值,if后面的表达式若成立(或“真”),则Stata将该表达式整体理解为1,且对该观测值执行操作,否则Stata将该表达式整体理解为0,且不对该观测值执行操作。特别地,若if后面的表达式只是某个数值型变量(特例是,只是某个0-1变量),则Stata直接根据该变量各取值所对应的逻辑值意义执行操作。
已有 3 人评分论坛币 学术水平 热心指数 信用等级 收起 理由
ywh19860616 + 1 + 1 + 1 精彩帖子
beanbean1030 + 1 + 1 + 1 观点有启发
dxystata + 20 + 1 好的意见建议

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

报纸
beanbean1030 发表于 2012-4-24 16:30:34
真是太好了!正对! 谢谢sungmoo!

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

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