楼主: CCircle
2308 7

[问答] 请问如何获取每个变量每个月的最后一个观测值? [推广有奖]

  • 0关注
  • 0粉丝

大专生

23%

还不是VIP/贵宾

-

威望
0
论坛币
13 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
135 点
帖子
7
精华
0
在线时间
86 小时
注册时间
2021-1-23
最后登录
2022-7-11

楼主
CCircle 学生认证  发表于 2022-3-29 19:01:22 |AI写论文
2论坛币
我有一组数据,变量包括日期date、年份y、月份m、几十个x(x1、x2、x3……),这些x全部是数值型变量,但是有很多缺失值,我希望将每个月x的月末观测值作为它这个月的值,把daily data变成monthly data(大家不用建议我求平均,我做过,想用月末值试试)。求问应该怎么实现?
我查到一些有关取变量最后一个观测值的方法,但是那种不涉及分组,我想要按月分组,求每个组的最后一个观测值。并且我这个数据也不能简单粗暴保留每月最后一天的值,因为有的月末那天没数据……请大家支支招,救救孩子,谢谢~~



关键词:最后一个 观测值 Monthly month Daily

沙发
乐天天12300 发表于 2022-3-29 19:27:21
排序,用if last.

藤椅
coco851019 发表于 2022-4-1 10:33:07
把数据取一部分截图看看,排个序应该就行

板凳
CCircle 学生认证  发表于 2022-4-3 00:11:00
不太会发图片,这是我的数据截图,大家凑活看看。我有几十个公司,截图没截完,不过已经根据日期分出月份与年了,请大家看看怎么弄

2.jpg (23.32 KB)

2.jpg

1.jpg (62.18 KB)

1.jpg

报纸
nightmeal 发表于 2022-5-6 13:54:18
data want(drop=temp);
    set a;
    retain temp;
    if missing(month)=1  then month = temp;
       else temp = month;
run;

地板
whymath 发表于 2022-5-8 11:31:10
用SQL,依次获取:
当月31号的值
当月30号的值
当月29号的值
当月28号的值
这是四个新的变量。

按顺序尝试取四个变量的值。即当31号的值非空,则取31号的值,否则若30号的值非空,则取30号的值,...,依此类推。

7
Gzazbrm 发表于 2022-5-9 22:16:44
transpose+merge

8
Gzazbrm 发表于 2022-5-9 22:17:10
transpose + merge

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-8 05:48