楼主: setarcune
10412 7

[数据管理求助] 求助:stata月度数据调整为季度数据有内置命令吗? [推广有奖]

  • 3关注
  • 1粉丝

硕士生

53%

还不是VIP/贵宾

-

威望
0
论坛币
0 个
通用积分
4.7388
学术水平
3 点
热心指数
4 点
信用等级
2 点
经验
382 点
帖子
39
精华
0
在线时间
309 小时
注册时间
2013-5-9
最后登录
2025-2-27

楼主
setarcune 发表于 2015-3-19 14:22:44 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
有1990-2014年的每年1-12月份的月度数据,想平均调整为每年的1-4季度的季度数据,请问有内置命令吗?不胜感激!
二维码

扫码加我 拉你入群

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

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

关键词:Stata 月度数据 数据调整 季度数据 tata 不胜感激

沙发
xiongjerry 发表于 2015-3-19 14:32:12 来自手机
setarcune 发表于 2015-3-19 14:22
有1990-2014年的每年1-12月份的月度数据,想平均调整为每年的1-4季度的季度数据,请问有内置命令吗?不胜感 ...
似乎没有,写命令也不麻烦

藤椅
gongshundaren 发表于 2015-3-19 18:35:51
如果时间变量是2014-01-31这样的话

gen year=substr(date,1,4)  //取出年份
destring year,replace   //转化为数值型
gen month=substr(date,6,2)  //取出月份
destring month,replace   //转化为数值型
gen quarter=0  //生成季度变量
replace quarter=1 if month==1 | month==2 | month==3 //生成第一季度变量
replace quarter=2 if month==4 | month==5 | month==6 //生成第二季度变量
replace quarter=3 if month==7 | month==8 | month==9 //生成第三季度变量
replace quarter=4 if month==10 | month==11 | month==12 //生成第四季度变量
gen yq=year*100+quarter  //生成新的含年份和季度的变量,但不合规范
gen qdate= quarterly( yq,"YQ")  //生成规范的含年份和季度的变量,但不好看
format qdate %tq  //转化为规范的含年份和季度的变量




egen qvar=mean(mvar), by(qdate)      //根据季度时间qdate,求每季度内月度变量mvar的平均值qvar
duplicates qdate   //删除每季度重复的样本

save newdata.dta  //保存

完了






已有 3 人评分经验 论坛币 学术水平 热心指数 信用等级 收起 理由
liuxinglin2018 + 1 + 1 热心帮助其他会员
hustchen2012 + 10 + 10 + 1 + 1 + 1 热心帮助其他会员
setarcune + 5 热心帮助其他会员

总评分: 经验 + 10  论坛币 + 15  学术水平 + 1  热心指数 + 2  信用等级 + 2   查看全部评分

板凳
setarcune 发表于 2015-3-20 01:21:43
gongshundaren 发表于 2015-3-19 18:35
如果时间变量是2014-01-31这样的话

gen year=substr(date,1,4)  //取出年份
非常感谢,摸索了很久自己勉强写出来了。

报纸
cxy8023 发表于 2018-6-4 12:24:17
gongshundaren 发表于 2015-3-19 18:35
如果时间变量是2014-01-31这样的话

gen year=substr(date,1,4)  //取出年份
gen qdate= quarterly( yq,"YQ")
这一步总是type mismatch是什么原因呢   改成string也不行 求解答  谢谢

地板
黃河泉 在职认证  发表于 2018-6-4 15:46:14
cxy8023 发表于 2018-6-4 12:24
gen qdate= quarterly( yq,"YQ")
这一步总是type mismatch是什么原因呢   改成string也不行 求解答  谢谢 ...
你若要问程序,永远附上资料;若要附上资料,永远用 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

7
晨海 发表于 2019-2-26 21:31:59
cxy8023 发表于 2018-6-4 12:24
gen qdate= quarterly( yq,"YQ")
这一步总是type mismatch是什么原因呢   改成string也不行 求解答  谢谢 ...
gen qdate = yq(year, quarter)

8
金融小学渣 学生认证  发表于 2022-12-18 20:43:30 来自手机
gongshundaren 发表于 2015-3-19 18:35
如果时间变量是2014-01-31这样的话

gen year=substr(date,1,4)  //取出年份
感谢,也学到了

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

本版微信群
加好友,备注jltj
拉您入交流群
GMT+8, 2026-1-3 03:46