按群组

时间:2016-06-23 15:00:35

标签: stata labeling

我在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

1 个答案:

答案 0 :(得分:1)

我猜你并不是指你说的是什么,因为你的例子显示了新的变量,即使id没有。

您始终可以通过使用跟踪观察顺序的变量

来确保当前的顺序
 gen long obs = _n 

然后我想你想要的是

bysort id (order) : gen newvar = sum(group != group[_n-1]) 

考虑到本论坛的目标,专业和发烧友程序员需要阅读文档并展示代码尝试,这是一个基本问题。参见例如https://stackoverflow.com/help/mcve这里定义了一个好问题。