假设我有一个Stata数据集,它有两个变量:type
和price
.type
每次观察的值是1到10之间的数字.
我想添加第三个值,即该price
变量的平均值type
.因此,例如,如果第一个观察type
值为3和price
10的a,那么我想添加第三个值,它是= 3 price
的所有观测值的平均值type
.
我怎么能在Stata做到这一点?
这是一种更简单有效的不同方法.如果你有一个大数据集,这将比aTron建议的多步循环更快,这种方法适应你的"类型"变量范围的变化(如果你的数据集大小改变,你不必返回代码并更改forvalues
命令中的范围).
1)创建一个假数据集
clear
input type price
1 1000
2 3200
3 5000
4 1200
5 1000
1 4000
2 2000
3 4000
4 1200
5 2000
end
Run Code Online (Sandbox Code Playgroud)
2)生成的平均price
通过type
bysort type: egen meanprice = mean(price)
li type price meanprice, sepby(type)
Run Code Online (Sandbox Code Playgroud)