全部版块 我的主页
论坛 计量经济学与统计论坛 五区 计量经济学与统计软件 Stata专版
4078 6
2018-10-19
悬赏 3 个论坛币 已解决
各位大神好,第一次用到循环语句,发现措手不及,求指点。
我的目的是这样的:我的县、镇和村都是从1开始编码的,且每个县(镇)对应的镇(村)的数量可能不同,比如镇1可能有4个村,编码1到4,而镇2可能有7个村,编码1到7。我现在想把每个村的全村农户的use1这个变量的值取平均值,并把值赋给该村的每个农户。
我现在写的基础语句是这样的:
gen use1mean=.
local i=1
while `i'<=6{
     local j=1
         while `j'<=3{
              local k=1
                  while `k'<=3{
                       if county==`i' {
                                if township==`j' {
                                    if village == `k'{
                                mean use1
                                replace use1mean=e(cmd)
                                        }
                    }                          
                          
                            }
                           local k=`k'+1
                           }
                local j= `j'+1
                }
local i=`i'+1
}

问题1:这个code现在跑完了之后既不输出结果,也不报错,不知道怎么改了,求指点。
问题2:以上语句只是尝试的基础版,未考虑镇、村数量不同问题,还请大神一并指点。

跪谢!


最佳答案

黃河泉 查看完整内容

如同楼上建议,
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2018-10-19 21:56:37
如同楼上建议,
复制代码
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2018-10-20 06:38:45
bysort county township village: egen vmean=mean(use1)

没有必要循环
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2018-10-20 07:15:46
你若要问程序,永远附上相关资料;若附上资料,永远用 dataex 印出资料。先 ssc install dataex (并见说明),将原始 Stata 资料中具有”代表性”的一部分资料列出,以供有意回答者实验之用,并能提供具体操作指令。并请参考 http://www.jianshu.com/p/9870080fe769,  https://bbs.pinggu.org/thread-5048204-1-1.html, 与 https://bbs.pinggu.org/thread-5917273-1-1.html
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2018-10-20 10:02:30
qiangli 发表于 2018-10-20 06:38
bysort county township village: vmean=mean(use1)

没有必要循环
谢谢大神!看来是我想复杂了。。。您建议的命令跑出来显示unrecognized command:  vmean,用了三楼大神的建议就跑出来了!依然非常非常感谢!
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2018-10-20 10:03:21
黃河泉 发表于 2018-10-20 07:18
如同楼上建议,
谢谢大神建议!妥妥解决了!棒棒的!
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群