我无法将9.3十进制变量转换为分钟。变量显示为一个小时的分数,而我需要显示为分钟。
以下是需要转换的示例。
DECSNTIME
0.039
1.279
6.801
答案 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;
答案 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;