Panel 如何使用Stata从公司年数据中创建所有变量的行业年平均值?
我有一个具有以下格式的面板数据集Panel 如何使用Stata从公司年数据中创建所有变量的行业年平均值?,panel,stata,Panel,Stata,我有一个具有以下格式的面板数据集 Firm Year Industry Sales Profit Export intensity R&D 1 2000 1 x x x x 2 2000 1 x x x x 3 2000 2 x x x x 4 2000 2 x x x x 1 2001 1 x x x x 2 2001
Firm Year Industry Sales Profit Export intensity R&D
1 2000 1 x x x x
2 2000 1 x x x x
3 2000 2 x x x x
4 2000 2 x x x x
1 2001 1 x x x x
2 2001 1 x x x x
3 2001 2 x x x x
4 2001 2 x x x x
1 2002 1 x x x x
2 2002 1 x x x x
3 2002 2 x x x x
4 2002 2 x x x x
1 2003 1 x x x x
2 2003 1 x x x x
3 2003 2 x x x x
4 2003 2 x x x x
我想创建所有变量每年的行业平均值。真实数据集有2000家公司*10年的观察结果和25个行业。如果您想维护您的数据结构,最简单的方法可能是将
egen
的by()
选项与循环相结合:
foreach v of varlist Sales Profit Export RD {
egen IndAvg`v' = mean(`v') , by(Industry Year)
}
例如:
但是,您可能还需要查看折叠
:
collapse (mean) Sales Profit Export RD , by(Industry Year)
这是一个广泛而模糊的问题。您正在使用哪个工具创建此面板?数据来源是什么?我试图将数据从excel复制到问题中,但没有成功。看起来有点乱。但基本上,我有关于销售额、利润、出口强度等的公司年度数据。我想为每年创建行业平均值(行业内所有公司的平均销售额)。您的工具是什么(sql server、excel、access等)?数据来自哪里(sql数据库、excel文件、mdb数据库、json文件…)?您将使用什么语言创建面板?您至少应该尝试一些代码。因此,在我看来,这不是一个根据请求编写代码的论坛,而是程序员讨论他们正在编写的代码问题的论坛;试着利用它。谢谢布莱丹。第一种选择似乎有效。但结果是重复的。例如,行业平均值多次出现。对于2000家公司的数据,每个10年,平均每年重复2000次。我认为stata无法显示结果。你有没有办法解决这个问题?数据的结构取决于分析的最终目标。在某些情况下,可能需要包含重复的平均值。如果您希望将数据保持在
行业公司年度
级别,则将存在行业年度
的重复平均值。否则,请查看答案末尾所述的折叠
选项,该选项会将数据集减少到每个行业年度
(完全删除公司
)。谢谢Bredan。然后我将尝试使用折叠,因为数据太大,无法在结果窗口中显示。在结果窗口中显示是一种方便(包括在其中,以便您可以将上述代码复制并粘贴到新的Stata会话中以查看流程),并且不应确定您的数据处理选择。如果您愿意,请用br
替换li,sebby(工业)
。是的,我理解。非常感谢你,布莱丹
collapse (mean) Sales Profit Export RD , by(Industry Year)