楼主: eric_yan
1156 3

[Stata初级班] 连老师,又来麻烦您了 [推广有奖]

  • 1关注
  • 11粉丝

已卖:117份资源

博士生

55%

还不是VIP/贵宾

-

威望
0
论坛币
379 个
通用积分
1.0047
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
250 点
帖子
173
精华
0
在线时间
250 小时
注册时间
2009-5-3
最后登录
2021-7-13

楼主
eric_yan 发表于 2013-1-4 15:24:35 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
尊敬的连老师,您好:
我已经把数据上传,我的问题如下:
1.我希望把变量gbt2002下的数值都进行分类,例如以06开头的610,620,690都规定为一组,定义为1;以07开头的710都定义为2,;以09开头的都定义为3;以10开头的都定义为4;以11开头的定义为5,这样以此类推,逐一进行分组,直到以46开头的。
这应该是加标签吧,但是看看您讲的视频,我也不是很清楚,求您赐教。
2.另外,我给您的数据中还有Value和avgdutiable_两个变量,在分组进行完之后,应该如何再结合这两个变量计算每个分组内的按value计算的avgdutiable_的加权平均数和算术平均数呢?并把结果与每个组都相对应呢?

问题有点多,还望老师不吝赐教!
二维码

扫码加我 拉你入群

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

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

关键词:连老师 value ABLE alue 我的问题 平均数 标签 如何

附件: 你需要登录才可以下载或查看附件。没有帐号?我要注册

沙发
arlionn 在职认证  发表于 2013-1-5 11:36:03
*-请把如下代码制作成 do-file,然后整体执行即可。

cd D:\stata11\ado\personal\temp    //按照你自己的存储路径修改一下即可
insheet using gbt2002.txt, clear

*-根据首字母分组
*-参见 Stata初级 A2_data 部分的讲义

  gen     gbtA = real(substr(string(gbt2002),1,1)) if gbt2002<1000
  replace gbtA = real(substr(string(gbt2002),1,2)) if gbt2002>1000
  
  xgroup gbtA, gen(gbt_gg) label lname(gbt_gg)
  labelbook gbt_gg //对应关系

  
*-value 加权和算术平均值

*-分组算术平均值
  bysort gbt_gg: egen mean_avg = mean(avgdutiable)  
  
*-分组加权平均值(参见学术论文视频 Faulkender_2006.do
  gen wmean_avg = .
  qui tab gbt_gg
  local N = r(r)
  forvalues i=1/`N'{
     qui sum avgdutiable [weight=value] if gbt_gg==`i'
     qui replace wmean_avg = r(mean)    if gbt_gg==`i'   
  }



藤椅
eric_yan 发表于 2013-1-5 15:48:34
谢谢连老师,但是为什么会出现这个情况呢?请您指点。xgroup本身不是个命令吧?
gbtA, gen(gbt_gg) label lname(gbt_gg)
unrecognized command:  xgroup
r(199);

板凳
eric_yan 发表于 2013-1-5 16:03:01

我的版本是stata11.2

难道您用的是stata12?xgroup这个命令只能在stata12中使用?我的版本是11.2的,您有合适的命令么?

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注jltj
拉您入交流群
GMT+8, 2025-12-26 23:32