连老师,我的数据结构如下所示。公司“firm”出口不同的产品product到国家“county”,我想只保留那些在一年中只出口一种产品的公司,如果某个公司某个年度只生产一种产品,但是出口到多个国家,这种公司也是我需要保留的。我该如何处理呢?
我试了一下以下的方法,都没有成功。
方法一:
egen product_num2=count(product),by (firm year)
keep if product_num2=1
这样的话,某个公司某个年度只生产一种产品但出口到多个国家的公司样本也被删除了,主要是因为count(product)这里有问题,count( unique product)这样又不能用。
方法二:
unique product, by(firm year) gen(vno)tostring vnoby firm year:keep if strmatch(vno,"1")几乎快成功了,但是由于vno中把同一公司同一年度出口到不能国家的情况只考虑一次,从而导致删除了一些满足要求的样本。
firm year product country
1 2000 10001 ger
1 2000 10001 twn
1 2001 10001 twn
2 2000 10009 esp
2 2000 10009 usa
2 2001 10006 twn
2 2001 10007 esp
3 2000 10008 esp
3 2000 10008 twn
4 2000 10007 usa
4 2000 10008 esp
4 2000 10008 fra
4 2001 10007 esp
4 2001 10007 fra
4 2001 10008 esp
4 2001 10008 fra