我在Stata有一个问题我无法解决。我的数据集看起来像下一个块的前两列,我想添加第三列,其中newvar
随时重置自己id
更改其值对newvar
很重要保持观察的顺序,所以我不能按组排序来生成它。
|id|group|newvar
|7 |10 |1
|7 |10 |1
|7 |10 |1
|7 |5 |2
|7 |5 |2
|7 |8 |3
答案 0 :(得分:1)
我猜你并不是指你说的是什么,因为你的例子显示了新的变量,即使id
没有。
您始终可以通过使用跟踪观察顺序的变量
来确保当前的顺序 gen long obs = _n
然后我想你想要的是
bysort id (order) : gen newvar = sum(group != group[_n-1])
考虑到本论坛的目标,专业和发烧友程序员需要阅读文档并展示代码尝试,这是一个基本问题。参见例如https://stackoverflow.com/help/mcve这里定义了一个好问题。