全部版块 我的主页
论坛 计量经济学与统计论坛 五区 计量经济学与统计软件 Stata专版
2842 6
2015-02-05
如图,如何求不同投资者(investorid)的最初交易日和最后交易日(tradingdate)间隔的天数,例如,编号为1的这个投资者,他的最初交易日是2010年3月26日,最后交易日是2010年5月5日,一个一个投资者用didate()-date()来算因为工作量太大所以不可行。 10.jpg

二维码

扫码加我 拉你入群

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

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

全部回复
2015-2-6 02:13:02
找到了笨办法解决,thanks anyway~
二维码

扫码加我 拉你入群

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

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

2015-2-6 08:44:26
iverjlsd 发表于 2015-2-6 02:13
找到了笨办法解决,thanks anyway~
您可以分享一下您的方法,方便其他遇到同样问题的坛友借鉴
二维码

扫码加我 拉你入群

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

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

2015-2-6 10:15:39
su by id对吗
二维码

扫码加我 拉你入群

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

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

2015-2-6 11:26:59
好的,方法比较笨,最后的tradelength即是交易的时间长度,有简易方法请指出
sort investorid tradingdate
by investorid:gen var1=_n
gen var2=tradingdate if var1=1
by investorid:gen var3=max(var1)
gen var4=tradingdate if var1==var3
bysort investorid:gen tradelength=var4-var2
二维码

扫码加我 拉你入群

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

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

2015-2-6 17:26:28
g t=string(tradingdate,"%8.0f")
replace t=substr(t,1,4)+"/"+substr(t,5,2)+"/"+substr(t,7,2)
bys id (t): egen max=max(date(t,"YMD"))
bys id (t): egen min=min(date(t,"YMD"))
g d=max-min
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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