如何解决如何使用权重按年份计算标准偏差?
egen
不使用权重很容易,但是我不知道如何使用权重。
解决方法
这是一个愚蠢的示例-因为您没有提供数据示例。我展示了两种方法,一种是在组上循环,另一种是使用statsby
。还有其他使用collapse
(例如)的方式,还有其他使用社区贡献的命令的方式。
webuse grunfeld,clear
gen sd = .
quietly forval y = 1935/1954 {
summarize invest [aw=mvalue] if year == `y'
replace sd = r(sd) if year == `y'
}
save my_grunfeld
statsby SD = r(sd),by(year): su invest [aw=mvalue]
merge 1:m year using my_grunfeld
tabdisp year,c(sd SD) format(%2.1f)
----------------------------------
year | sd r(sd)
----------+-----------------------
1935 | 136.2 136.2
1936 | 175.3 175.3
1937 | 192.4 192.4
1938 | 116.1 116.1
1939 | 140.0 140.0
1940 | 196.0 196.0
1941 | 213.8 213.8
1942 | 197.0 197.0
1943 | 215.4 215.4
1944 | 237.0 237.0
1945 | 237.3 237.3
1946 | 283.1 283.1
1947 | 230.8 230.8
1948 | 224.2 224.2
1949 | 234.7 234.7
1950 | 274.3 274.3
1951 | 315.5 315.5
1952 | 377.2 377.2
1953 | 572.6 572.6
1954 | 664.1 664.1
----------------------------------
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。