楼主: xiuyuansun
5055 5

[数据管理求助] 应该怎样修改egen生成的变量值呢? [推广有奖]

  • 0关注
  • 1粉丝

大专生

36%

还不是VIP/贵宾

-

威望
0
论坛币
28 个
通用积分
24.7618
学术水平
0 点
热心指数
1 点
信用等级
0 点
经验
377 点
帖子
33
精华
0
在线时间
62 小时
注册时间
2013-11-4
最后登录
2016-11-8

楼主
xiuyuansun 发表于 2014-1-3 12:40:31 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
我的原始数据只有三个变量: region, date, price.
我用egen生成了price的均值 (if region == "A" & date == "t"), 但是用replace后面不能用mean()这个函数.

我想把所有的均值都放在一列, 命令如下:
use 0price.dta, clear
egen pricem = mean(price) if region == "Beijing" & date == "201001"
replace pricem = mean(price) if region == "Beijing" & date == "201012"

然后提示:
unknown function mean()


请问应该怎样修改egen生成的变量呢?
二维码

扫码加我 拉你入群

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

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

关键词:egen 变量值 function Beijing replace price 修复

沙发
ywh19860616 发表于 2014-1-3 13:02:41
没有看懂是什么意思
举个具体的例子。
一份耕耘,一份收获。

藤椅
xiuyuansun 发表于 2014-1-3 13:13:21
ywh19860616 发表于 2014-1-3 13:02
没有看懂是什么意思
举个具体的例子。
先谢谢你!我的数据是不同地区不同时期的价格列表, 我把所有的价格都放在一列, 用地区和时期变量来区分.
现在想分别把某一地区某一时期的所有价格求平均值后放在同一列, 只要和地区和时期变量对应起来就可以.

我的思路是先用egen生成pricem这个新变量, 在地区和时期限定的条件下求均值, 这样只有符合地区和时期条件的值, 再用replace修改pricem这个变量, 依次把缺失值补上.

egen pricem = mean(price) if region == "某地区" & date == "某时期"
上面的命令结果在附件.

接下来我想用replace修改pricem这个变量的时候提示mean()不可用.

捕获.JPG (77.79 KB)

捕获.JPG

板凳
ywh19860616 发表于 2014-1-3 13:20:43
xiuyuansun 发表于 2014-1-3 13:13
先谢谢你!我的数据是不同地区不同时期的价格列表, 我把所有的价格都放在一列, 用地区和时期变量来区分.
...
  1. use 0price.dta, clear
  2. egen id=group(region)
  3. sort id
  4. egen pricem = mean(price),by(id date)
复制代码
想要的结果是这样吗?
已有 2 人评分经验 学术水平 热心指数 收起 理由
天涯曰归 + 1 + 1 精彩帖子
夏目贵志 + 5 + 1 热心帮助其他会员

总评分: 经验 + 5  学术水平 + 1  热心指数 + 2   查看全部评分

一份耕耘,一份收获。

报纸
xiuyuansun 发表于 2014-1-3 13:29:16
ywh19860616 发表于 2014-1-3 13:20
想要的结果是这样吗?
学习了~ 就是这样的结果!
十分感谢!

地板
qgl_xj 发表于 2016-5-27 22:20:41
太感谢了!

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

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