我有一个每个城市都有不同产品的数据库。它们被列为单一观察。相反,我希望它像一个观察,比较不同城市的两种产品。 我的实际数据库如下所示:
Date Product Market Price
A X H 10
A X I 5
A X J 7
我希望它看起来像这样:
Date Product Market1 Market2 Price1 Price2
A X H I 10 5
A X H J 10 7
A X I J 5 7
谢谢!
答案 0 :(得分:3)
这应该可以让你一路走来。基本思想是在几乎相同的数据副本上使用joinby
形成组内的所有成对组合,然后删除自我匹配和重复。
clear
input str1(Date Product Market) byte(Price)
A X H 10
A X I 5
A X J 7
end
rename (Market Price) =2
tempfile markets
save "`markets'"
rename *2 *1
joinby Date Product using "`markets'"
drop if Market1>=Market2 // drop duplicates
order Date Product Market1 Market2 Price1 Price2
drop if Market1==Market2
list