楼主: C100
1080 6

SAS 时间转化问题!急···谢谢~ [推广有奖]

  • 2关注
  • 0粉丝

硕士生

84%

还不是VIP/贵宾

-

威望
0
论坛币
291 个
通用积分
0.0600
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
2179 点
帖子
167
精华
0
在线时间
187 小时
注册时间
2010-4-20
最后登录
2018-4-11

楼主
C100 发表于 2011-10-11 10:06:43 |只看作者 |坛友微信交流群|倒序 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
我的sas数据集中有这样的一列时间数据:
4'30''  6  7  8  5'33''  7'5''          6  10 ;
中间空白较多的表示 时间为空。我现在想把这列时间数据全部化成 秒,如上数据 化成秒得到:
270  360  420  333  425           360  600;
请问各位有什么方法可以实现呢?????
在此先谢过了·················各位帮帮忙 o-o
二维码

扫码加我 拉你入群

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

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

关键词:sas数据集 什么方法 数据全 数据集

沙发
YueweiLiu 发表于 2011-10-11 12:39:01 |只看作者 |坛友微信交流群
嗯,使用正则表达式来处理,相对方便些,不容易出错。
  1. data have;
  2.         char="4'30''  6  7  8  5'33''  7'5''          6  10";
  3.         length char1 $ 500 chartmp $ 50;
  4.         re=prxparse("/(\b\d+\'[1-5]*[0-9]\'\')|(\b\d+\b)/");
  5.         start=1;
  6.         stop=length(char);
  7.         char1=char;
  8.         call prxnext(re,start,stop,char,startposn,len);
  9.         do while (startposn>0);               
  10.                 chartmp=substr(char,startposn,len);
  11.                 if findc(chartmp,"'") then char1=tranwrd(char1,strip(chartmp),strip(put(input(scan(chartmp,1,"'"),best.)*60+input(scan(chartmp,2,"'"),best.),best.)));
  12.                 else char1=tranwrd(char1,compbl(chartmp)," "||strip(put(input(chartmp,best.)*60,best.))||" ");
  13.                 if start<stop then call prxnext(re,start,stop,char,startposn,len);
  14.                 else startposn=0;
  15.         end;
  16.         keep char1 char;
  17. run;
复制代码
已有 1 人评分学术水平 热心指数 信用等级 收起 理由
yugao1986 + 1 + 1 + 1 热心帮助其他会员

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

使用道具

藤椅
zhentao 发表于 2011-10-11 13:16:40 |只看作者 |坛友微信交流群
长见识了。

使用道具

板凳
C100 发表于 2011-10-11 19:07:42 |只看作者 |坛友微信交流群
YueweiLiu 发表于 2011-10-11 12:39
嗯,使用正则表达式来处理,相对方便些,不容易出错。
谢谢你~~~如果数据不符合标准,也就是说英文的单引号和双引号会出现中文状态的,,这样还可以吗?

使用道具

报纸
YueweiLiu 发表于 2011-10-12 00:56:23 |只看作者 |坛友微信交流群
中文的话,程序要做一下小改动,把正则表达式修改一下即可。

使用道具

地板
zhentao 发表于 2011-10-13 09:08:24 |只看作者 |坛友微信交流群
昨天找了PRX看了一下,第一次知道有这个东西。真的很有意思。

使用道具

7
可道可名 发表于 2011-10-13 09:27:19 |只看作者 |坛友微信交流群
学习了,以前真不知道呢

使用道具

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

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

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

GMT+8, 2024-4-28 21:46