全部版块 我的主页
论坛 计量经济学与统计论坛 五区 计量经济学与统计软件 Stata专版
4248 14
2018-02-27
悬赏 10 个论坛币 已解决
求教大神!我有2008和2009年两年患者的门诊就诊数据,想要生成一个变量timegap,等于2008年-2009年期间的任意2次门诊就诊时间之差,如果30≤timegap≤365,即认为患者为我的目标人群。
现在的问题是,不同患者2008年-2009年就诊次数不一样,而且有的次数多达上百次,一条一条手写不现实,请问如何用循环的语句实现我的目标呢?

举例:
序号  患者编号         就诊时间          就诊年份
1             1              2008.10.01      2008
2             1              2008.12.15      2008
3             1              2009.01.10      2009
4             1              2009.05.01      2009
5             2              2008.08.15      2008
6             2              2008.10.01      2008
7             2              2008.12.15      2008
8             2              2008.12.31      2008
9             2              2009.01.31      2009
10           2              2009.05.31      2009
11           2              2009.08.31      2009

对患者编号为1的人,我想实现的是序号1-4这4条记录中,任意两条记录的就诊时间相减,差值满足30≤timegap≤365即可
对患者编号为2的人,我想实现的是序号5-11这7条记录中,任意两条记录时间的差值满足30≤timegap≤365即可

急求循环语句~!谢谢各位大神

最佳答案

二维码

扫码加我 拉你入群

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

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

全部回复
2018-2-27 02:15:00
See below.
二维码

扫码加我 拉你入群

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

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

2018-2-27 02:38:44
顶一个~
二维码

扫码加我 拉你入群

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

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

2018-2-27 07:07:51
尔后建议请用 dataex (先 ssc install dataex 并见说明) 将原始 Stata 资料中具有”代表性”的一部分资料列出,以供有意回答者实验之用,并能提供具体操作指令。并请参考 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-2-27 13:07:01
逍遥梦蝶 发表于 2018-2-27 07:01
大神,从34行开始能不能简单说一下思路~我看不太懂命令
二维码

扫码加我 拉你入群

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

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

2018-2-27 17:43:25
tracychen1900 发表于 2018-2-27 13:07
大神,从34行开始能不能简单说一下思路~我看不太懂命令
稍微有一点错误。应该在while循环下再加一层循环,才能计算出所有可能组合的差值。这一步不难,你可以自己尝试一下。
二维码

扫码加我 拉你入群

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

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

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群