楼主: andrewdu
884 1

SAS如何配對每五分鐘日內資料 [推广有奖]

  • 0关注
  • 0粉丝

等待验证会员

学前班

90%

还不是VIP/贵宾

-

威望
0
论坛币
0 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
20 点
帖子
1
精华
0
在线时间
5 小时
注册时间
2015-3-31
最后登录
2015-4-3

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币

hi,各位好

前在處理大量日內的資料,需要把每個時點的配對上最靠近的5分鐘後的資料

像是

時間     價格    配對五分後價格

090110  15            17
090220  16            19
090530  17            20
090630  18            20
090720  19
091130  20

[程式範例]:

之前是 將時間轉成秒數除以300後 用INT 跟MOD 還有first.去篩選
資料

但是是完全無法配對

data aa; set aa; SEC_COUNT = (hr-9)*3600+min*60+sec;
                 INT_5     =  int(SEC_COUNT/300)   ;
                 mod_5     =   MOD(SEC_COUNT,300)  ; run;

data aa;set aa; if first.INT_5;run;

跑出來的資料雖然是每五分鐘的資料,但不是我需要的  每筆資料 每個時間點 都有對應的


五分鐘後的資料,請問各位高手我應該怎麼做?



二维码

扫码加我 拉你入群

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

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

关键词:Count First FIRS Data int 如何

沙发
moony135 发表于 2015-3-31 09:33:43 |只看作者 |坛友微信交流群
data aa; set aa; SEC_COUNT = (hr-9)*3600+min*60+sec;
                 INT_5     =  int(SEC_COUNT/300)   ;
                 mod_5     =   MOD(SEC_COUNT,300)  ; run;


看不懂你的hr-9是甚麼意思..


再來下面的問題是
090110  15            17
090220  16            19
090530  17            20
090630  18            20
090720  19
091130  20


我選擇090110那筆資料好了(我的認知是09=小時 01=分鐘 10=秒)
與090110這筆最靠近五分鐘的其實是 090630這筆
(090630-090110)=0520 與五分鐘差20秒

(090530-090110)=0420 與五分鐘差40秒
這樣哪個會比較接近五分鐘?

使用道具

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

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-4-27 05:44