在SAS中将十进制时间转换为分钟

时间:2019-05-24 15:55:15

标签: time sas decimal

我无法将9.3十进制变量转换为分钟。变量显示为一个小时的分数,而我需要显示为分钟。

以下是需要转换的示例。

DECSNTIME
0.039
1.279
6.801

2 个答案:

答案 0 :(得分:2)

将十进制小时转换为秒,并格式化时间显示的值。

data have;
  input decsntime @@;
  cards;
0.039 1.279 6.801
run;

data want;
  set have;
  minutes = decsntime * 60; * plain minutes might be enough, depends on analysis;
  time = decsntime * 3600; * sas time value;
  format time time5.;
run;

proc report data=want;
  columns decsntime minutes time time=timehms time=timehmsd;
  define decsntime / 'Time/(hours)' display;
  define time / 'Time/(H:M)';
  define timehms / format=time8. 'Time/(H:M:S)';
  define timehmsd / format=time11.2 'Time/(H:M:S.D)';
run;

enter image description here

答案 1 :(得分:0)

正如@Richard的评论中所提到的,您是否正在寻找以下简单的内容?如果不是,那么请编辑您的问题,以在从小时到分钟的转换之前和之后提供更多的解释和数据示例。

data have;
   input hours;
   datalines;
9.3
0.039
1.279
6.801
1
1.5
2
;

data want;
   set have;
   minutes = hours * 60;
run;