Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在SAS中将字符变量转换为时间_Sas - Fatal编程技术网

在SAS中将字符变量转换为时间

在SAS中将字符变量转换为时间,sas,Sas,我有一个叫做post_time的变量,它是字符类型 Type : Character Length : 5 Foramt : $5. Informat : $5. 例:003001250 我如何从中获得时间?有人能帮我吗? 需要时间看起来像03:00AM 12:50PM 需要以标准时区显示所有时间假设前三位是小时,后两位是分钟,这可能有效: data have; input time $; cards; 00300 00400 00234 ; run; data wan

我有一个叫做post_time的变量,它是字符类型

Type     : Character
Length   :  5 
Foramt   : $5. 
Informat : $5.
例:003001250

我如何从中获得时间?有人能帮我吗? 需要时间看起来像03:00AM 12:50PM
需要以标准时区显示所有时间

假设前三位是小时,后两位是分钟,这可能有效:

data have;
input time $;
cards;
00300
00400
00234
;
run;

data want;
    set have;
    time_var=hms(
                input(substr(time, 1,3), 3.),
                input(substr(time, 4,2), 2.), 
                0);
    format time_var timeampm8.;
run;

假设前三位是小时,后两位是分钟,这可能有效:

data have;
input time $;
cards;
00300
00400
00234
;
run;

data want;
    set have;
    time_var=hms(
                input(substr(time, 1,3), 3.),
                input(substr(time, 4,2), 2.), 
                0);
    format time_var timeampm8.;
run;

SAS将通过HHMMS信息直接处理此问题

data _null_;
  x = input('02100',HHMMSS5.);
  put x= timeampm9.;
run;
可以使用时区敏感格式(如NLDATMTZ.)和/或TZONES2U或TZONEU2S函数处理任何时区问题,这些函数使用DATETIME,但如果您从未跨越日期边界(尽管使用时区存在风险),则可以使用您的时间值


有关更详细的说明,请参阅。

SAS将通过HHMMSS信息直接处理此问题

data _null_;
  x = input('02100',HHMMSS5.);
  put x= timeampm9.;
run;
可以使用时区敏感格式(如NLDATMTZ.)和/或TZONES2U或TZONEU2S函数处理任何时区问题,这些函数使用DATETIME,但如果您从未跨越日期边界(尽管使用时区存在风险),则可以使用您的时间值


有关更详细的解释,请参阅。

这取决于其中存储的内容,不是吗?00300对应于什么时间值,3AM?它应该显示为03:00AM,而不是取决于其中存储的内容,不是吗?00300对应于什么时间值,3AM?它应该显示为03:00AM是否存在语法错误?我收到一个错误,在我的计算机SAS 9.3上显示error:Found“,”when expecting)Worked。对你的有用吗?非常感谢!!!这对我有用。然而,我还需要将其转换为IST时区。现在在标准时区。你能帮我一下吗?时区将以TZONESxx格式或使用TZONESxx函数处理。有语法错误吗?我收到一个错误,在我的计算机SAS 9.3上显示error:Found“,”when expecting)Worked。对你的有用吗?非常感谢!!!这对我有用。然而,我还需要将其转换为IST时区。现在在标准时区。你能帮我一下吗?时区将以TZONESxx格式或使用TZONESxx函数处理。