【发布时间】:2017-11-21 16:07:22
【问题描述】:
我有一个 20 年期间的面板数据集,其中有几家公司有不同的财务产出(例如销售额、成本)。我有超过 100,000 次观察。
我现在想消除在数据集中只有 2 个或更少观察值的公司(例如,公司 A 仅在 2000 年有产出,但没有其他年份)。
我用过:
by fyear: tabulate companyid
我可以看到观察次数少于 3 的公司,但如何自动删除观察次数少于 3 的公司?
【问题讨论】:
标签: stata
我有一个 20 年期间的面板数据集,其中有几家公司有不同的财务产出(例如销售额、成本)。我有超过 100,000 次观察。
我现在想消除在数据集中只有 2 个或更少观察值的公司(例如,公司 A 仅在 2000 年有产出,但没有其他年份)。
我用过:
by fyear: tabulate companyid
我可以看到观察次数少于 3 的公司,但如何自动删除观察次数少于 3 的公司?
【问题讨论】:
标签: stata
by companyid (fyear), sort: drop if _N<3
这将使您的剩余数据按 companyid 和 fyear 排序,因此如果您真的希望它按 fyear 排序,则需要按照此操作
sort fyear companyid
【讨论】: