SAS datetime格式/informat-自Unix纪元起的毫秒数

SAS datetime格式/informat-自Unix纪元起的毫秒数,datetime,sas,Datetime,Sas,我需要使用SAS输入一个包含时间值的字符串,表示为自Unix纪元以来的毫秒数 例如,我有一个输入字符串“1278486000000”,我想提取日期值“2010-07-07” 基本上,我需要SAS informat版本的 这是一个相当常见的时间戳,所以我想这有一个内置的SAS格式。我知道SAS的1960年纪元和标准Unix 1970年纪元之间的区别,所以我想这可能会使事情复杂化 如果没有标准的informat,我将如何创建一个呢?我不知道informat,但这当然可以通过函数调用实现 data _

我需要使用SAS输入一个包含时间值的字符串,表示为自Unix纪元以来的毫秒数

例如,我有一个输入字符串“1278486000000”,我想提取日期值“2010-07-07”

基本上,我需要SAS informat版本的

这是一个相当常见的时间戳,所以我想这有一个内置的SAS格式。我知道SAS的1960年纪元和标准Unix 1970年纪元之间的区别,所以我想这可能会使事情复杂化


如果没有标准的informat,我将如何创建一个呢?

我不知道informat,但这当然可以通过函数调用实现

data _null_;
x="1278486000000";
y=datepart(intnx('dtyear',input(x,best32.)/1000,10,'s'));
put y= date.;
run;
我们假装这是1960年的纪元,然后调整到1970年的纪元。这将稍微偏离您的答案,因为您的答案已根据时区进行了调整。如果愿意,还可以单独调整时区的SAS值