浪里小白条 发表于 2019-4-23 11:31
我尝试了一下 但是如果把行列交换 j 就不是时间了 用j(time)的时候就会报错“time contains all missin ...
不会还没解决吧。这几天比较忙没看论坛哈不好意思。
我猜是因为你没有加string这个选项。stata这点比较不科学,应该把string设置成为默认选项。
我帮你搞了一下。从excel粘过来之后用下面的代码:
gen date = substr(index, 2, 8)
destring date, replace
drop index
gen year = floor(date/10000)
gen month = floor((date - 10000*year)/100)
gen day = date - year *10000 - month*100
order year month day
gen td = mdy(month, day, year)
drop year month day date
reshape long sr, i(td) j(spec) s
会得到下面的数据。这大概是你要的了。注意我reshape后面的s选项。
data.dta
(830.41 KB)