1

私は企業のパネルを持っています(ID、年)。各企業も特定の国に属しています。ここで、国別の GDP 時系列を追加したいと思います。

目標は、たとえば、米国の各企業に、その年の米国の GDP などを割り当てることです。

誰かがそれについてどうやって行くか教えてもらえますか? mergeここでコマンドを使用する方法はありますか?

4

1 に答える 1

1

mergerightfullyのヘルプ ファイルにあるように、merge m:mほとんどの場合、これは間違ったアプローチです。会社のデータセットが次のように設定されている場合

clear
input country id year profit
1 1 2010 152
1 1 2011 -8
1 2 2010 1090
2 3 2010 502
2 3 2011 -15
end
tempfile firms
save `firms'

そして国ファイル

clear
input country year gdp
1 2010 287582354
1 2011 298723412
2 2010 89734531
2 2011 87340120
end
tempfile gdp
save `gdp'

次に、firmsファイルから始めて、次のように結果をマージできます。

use `firms', clear
merge m:1 country year using `gdp'
* check results
tab _merge
assert _merge == 3
* clean up the remaining mess
drop if _merge !=3
drop _merge

これにより、次のような出力が生成されるはずです

Result                           # of obs.
-----------------------------------------
not matched                             0
matched                                 5  (_merge==3)
-----------------------------------------

一致しなかったものがない場合 (これは私の検証およびクリーンアップ コードが参照するものです)、問題はありません。

于 2013-01-29T15:56:25.787 に答える