我有一个20年的面板数据集,其中有几家公司有不同的财务产出(例如销售,成本)。我有超过100,000个观察结果。
我现在想要消除在数据集中只有2个或更少观察值的公司(例如,公司A仅在2000年输出,但在其他年份没有)。
我用过:
by fyear: tabulate companyid
我可以看到观察次数少于3次的公司,但如何能够自动丢弃所有观察次数少于3次的公司?
答案 0 :(得分:1)
by companyid (fyear), sort: drop if _N<3
这将使您的剩余数据按照companyid和fyear进行排序,因此,如果您确实希望按fyear排序,则需要按照
进行操作sort fyear companyid