2
我的数据如下所示(我在数据集中更多的变数和组):提取子
group x time
1 0 1636
1 0 1637
1 0 1638
1 1 1639
1 1 1640
1 1 1641
1 1 1642
2 0 1683
2 0 1684
2 0 1685
2 0 1686
2 0 1687
2 0 1688
2 1 1689
2 1 1690
2 1 1691
3 0 1638
3 1 1639
3 1 1640
每个group
都有自己的时间系列(time
表示)。我需要的是在x
之前和之后的固定数量的观察值对于某个组值为1。例如,在x取1和3个观察值(从而观察3个观察值)之前总是有3个观测值(因此3个观察值在3之前)。如果在之前或之后没有足够的观察结果,我想删除该组的时间序列。然后
数据将如下所示:
group x time
1 0 1636
1 0 1637
1 0 1638
1 1 1639
1 1 1640
1 1 1641
2 0 1686
2 0 1687
2 0 1688
2 1 1689
2 1 1690
2 1 1691
关于如何做到这一点有什么建议?
谢谢!这只保留了每组的最初3次第一次观察,而不是在x变为1之前的3次观察。例如,对于组2,时间序列从1685跳到1689,而不是保持观察值1688 1687和1686. – research111
I可能没有完全清楚。在第2组中,观测值'1686 1687'和'1688'是在x取值为1之前的观测值。我想提取这3个值,而目前'1683,1684'和'1685'被提取。 '1689 1690'和'1691'是在'x'取值1之后的观察值,现在正确采用。这是清楚的吗?所以我想只保留'1686 1687'和'1688' – research111
那会很棒..非常感谢! – research111