Matrix 变量增量记录事件(无循环)
我有这种结构(Matrix 变量增量记录事件(无循环),matrix,stata,Matrix,Stata,我有这种结构(ID和Event): 我想创建X,但是我不能使用任何循环,因为数据库太大了。如有任何建议,我将不胜感激 编辑:我尝试了一些类型的bysort ID和Event但运气不佳:现在我正在使用这种方法: gen Spell=Event replace Spell=2 if Spell[_n-1]==1 & Spell[_n+1]==0 & ID[_n]==ID[_n-1] 但它不会起作用,因为我无法区分数据库中显示的第二个或第三个+事件 已解决 像这样的数据集需要一个
ID
和Event
):
我想创建X
,但是我不能使用任何循环,因为数据库太大了。如有任何建议,我将不胜感激
编辑:我尝试了一些类型的bysort ID
和Event
但运气不佳:现在我正在使用这种方法:
gen Spell=Event
replace Spell=2 if Spell[_n-1]==1 & Spell[_n+1]==0 & ID[_n]==ID[_n-1]
但它不会起作用,因为我无法区分数据库中显示的第二个或第三个+事件
已解决
像这样的数据集需要一个时间或其他序列变量。如果没有,您当然应该创建一个:
sort ID, stable
by ID : gen t = _n
你想要的就是
bysort ID (t) : gen wanted = sum(event)
这比你拥有的更干净更清晰。在斯塔塔
help sum()
search by
search spell
查看相关帮助文件和说明性文章
(您知道这种方法,但由于您没有准确地展示您的尝试,因此我们无法对错误之处进行评论。)欢迎使用so!到目前为止你试过什么?请编辑您的问题以显示您尝试的代码。
bysort ID (t) : gen wanted = sum(event)
help sum()
search by
search spell