楼主: zhouershimei
10110 8

[数据管理求助] 请问各位大神如何在stata里将月度数据合并为年度数据? [推广有奖]

  • 2关注
  • 0粉丝

已卖:3份资源

副教授

46%

还不是VIP/贵宾

-

威望
0
论坛币
74 个
通用积分
17.7325
学术水平
1 点
热心指数
2 点
信用等级
1 点
经验
15931 点
帖子
582
精华
0
在线时间
561 小时
注册时间
2011-5-13
最后登录
2025-9-27

楼主
zhouershimei 发表于 2020-9-17 09:58:18 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
已有的数据如下 月度数据.png

希望得到的数据如下 年度数据.png

stata新手,希望得到各位大神的指点,万分感谢!
二维码

扫码加我 拉你入群

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

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

关键词:Stata 年度数据 月度数据 数据合并 tata

回帖推荐

DΘstinyじò 发表于2楼  查看完整内容

建议用dataex命令(ssc install dataex)贴出示例数据 这样能知道你的变量的具体格式,如果你的month变量在stata是字符格式,尝试以下代码: 如果moth变量是stata的时间格式

沙发
DΘstinyじò 发表于 2020-9-17 13:20:26
建议用dataex命令(ssc install dataex)贴出示例数据
这样能知道你的变量的具体格式,如果你的month变量在stata是字符格式,尝试以下代码:
  1. gen year=real(substr(month,1,4))
  2. //或者gen year=year(date(month,"YM"))
  3. collapse (sum) value ,by(year company)
复制代码

如果moth变量是stata的时间格式
  1. gen year=year(dofm(month))
  2. collapse (sum) value ,by(year company)
复制代码

已有 2 人评分学术水平 热心指数 信用等级 收起 理由
日新少年 + 2 + 2 + 2 精彩帖子
dajiaqi + 5 + 5 + 3 分析的有道理

总评分: 学术水平 + 7  热心指数 + 7  信用等级 + 5   查看全部评分

藤椅
zhouershimei 发表于 2020-9-17 19:33:35
DΘstinyじò 发表于 2020-9-17 13:20
建议用dataex命令(ssc install dataex)贴出示例数据
这样能知道你的变量的具体格式,如果你的month变量在 ...
感谢大神!!马上试试

板凳
hahahaha66 发表于 2022-5-29 22:12:45 来自手机
DΘstinyじò 发表于 2020-9-17 13:20
建议用dataex命令(ssc install dataex)贴出示例数据
这样能知道你的变量的具体格式,如果你的month变量在 ...
不好意思,点错了

报纸
hahahaha66 发表于 2022-5-29 22:14:05 来自手机
DΘstinyじò 发表于 2020-9-17 13:20
建议用dataex命令(ssc install dataex)贴出示例数据
这样能知道你的变量的具体格式,如果你的month变量在 ...
为啥看不到代码呀?请问可以再发一下吗?谢谢

地板
Lee_iris 在职认证  学生认证  发表于 2022-10-4 17:07:38
DΘstinyじò 发表于 2020-9-17 13:20
建议用dataex命令(ssc install dataex)贴出示例数据
这样能知道你的变量的具体格式,如果你的month变量在 ...
请问如果是从日度数据加总到周度、两周度、月度,如何写命令?

7
wlalalalalalAa 发表于 2023-6-10 13:21:49
Lee_iris 发表于 2022-10-4 17:07
请问如果是从日度数据加总到周度、两周度、月度,如何写命令?
请问会了吗

8
Lee_iris 在职认证  学生认证  发表于 2023-6-11 18:13:37
wlalalalalalAa 发表于 2023-6-10 13:21
请问会了吗
1.首先是生成日度、周度、两周度、月度的变量:
      
  1. gen date =date(dataDate,"YMD") // dataDate是20210101这样的字符串,通过date命令转为日期形式
  2. gen month=substr(dataDate,5,2) // 生成月度变量

  3. format date %tdCY-N-D // 设置日期变量格式

  4. gen week=week(date) // 生成周度变量,这里的周度变量是按照那一天在日历上的自然周数得出的
复制代码



2.接下来对变量进行加总或者平均,例如进行城市-周度的加总
      
  1. bys city week: egen y_week=sum(y)
  2. bys city week: egen x_week=sum(x)        

  3.         
复制代码


再例如进行城市-周度的平均
      
  1. foreach x in x1 x2 x3 {[/size]
  2. [size=14px]        bys city week:egen mean_`x'=mean(`x')[/size]
  3. [size=14px]        }[/size]  
复制代码




3.再下来转为城市对周度数据
         
  1. duplicates drop city week,force[/size]
复制代码




9
俄罗斯方块6 发表于 2023-9-6 16:51:16
牛(wo)逼(ai)了(ni),试了试一天了 终于对了,感谢!!!

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

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