SAS:如何以时间格式显示值

SAS:如何以时间格式显示值

假设 SAS 中有一个名为“duration”的变量,其时间值为7:30:00 。

您可以使用 SAS 中的以下函数以不同的方式格式化该时间值:

PUT(duration, time8.) – 时间格式,总长度为8。

这将产生 7:30:00。

PUT(持续时间,hhmm。) – 小时格式,仅包含小时和分钟。

这将产生 7:30。

PUT(duration, hours5.2) – 格式为带小数的时间。

这将产生 7.50。

hour(duration) – 仅以小时为单位的格式。

这将产生 7

分钟(持续时间) ——仅以分钟为单位的格式。

这将产生 30 个。

秒(持续时间) – 仅以秒为单位的格式。

这将产生 0。

以下示例展示了如何在实践中使用每种格式。

示例:在SAS中以时间格式显示值

假设我们在 SAS 中有以下数据集,其中包含有关不同运动员完成任务所需时间的信息:

/*create dataset*/

data my_data;

input athlete $duration time8.;

datalines ;

At 04:15:00

B 10:09:15

C 7:30:00

D 18:55:00

E 14:23:59

F 23:45:10

;

run ;

/*view dataset*/

proc print data =my_data;

默认情况下,SAS 以秒为单位存储时间值。

例如,在第一行中我们输入 4 小时 15 分 0 秒,相当于 15,300 秒。

注:一天有 86,400 秒。

我们可以使用以下语法创建一个新数据集,其中我们将持续时间列值格式化为不同的时间格式:

/*create new dataset with duration printed in various time formats*/

data new_data;

set my_data;

duration_time8 = put (duration, time8. );

duration_hhmm = put (duration, hhmm. );

duration_hour52 = put (duration, hour5.2 );

duration_hour = hour (duration);

duration_minute = minute (duration);

duration_second = second (duration);

run ;

/*view new dataset*/

proc print data = new_data;

请注意,每个新列都以不同的方式格式化时间值:

uration_time8显示小时、分钟和秒。

uration_hhmm仅显示小时和分钟。

uration_hhmm显示十进制小时。

uration_hour仅显示小时值。

分钟_持续时间仅显示分钟值。

uration_second仅显示秒值。

您可以随意使用任何您想要的格式,具体取决于您希望如何在数据集中显示时间值。

其他资源

以下教程解释了如何在 SAS 中执行其他常见任务:

SAS:如何以美元格式显示值SAS:如何以百分比格式显示值SAS:如何在PROC SQL中格式化日期值

相关推荐

查建筑规范的app有哪些(好用的建筑规范大全app)
【2021最新版】任丘到长沙多少公里?全程里程、路线规划大揭秘!
中华人民共和国职业分类大典(2022年版)公示稿