SAS - 字符串转换为 ISO8601 format
作者:互联网
如果原始数据是字符串格式的日期($16.),类似:
STDTC ENDTC
2022-01-03 2022-01-03
2022-03-22 2022-05-02
2022-06-02T10:30 2022-06-04
虽然字符串是ISO8601的样子,但此时如果对二者进行计算,必须先转换为数值格式:
data have; input STDTC $16. ENDTC :$16.; cards; 2022-01-03 2022-01-03 2022-03-22 2022-05-02 2022-06-02T10:30 2022-06-04 ; data want; set have; stdtn=input(stdtc,B8601DT.); format stddn E8601DT.; endtn=input(endtc,B8601DT.); format endtn E8601DT.; delta=endtn-stdtn; format delta time16.; run;
注意这里不可以用 input(stdtc, E8601DT.), 会提示 invalid argument for INPUT. 原因是
所以当字符串中同时有 date 和 datetime 日期时,就只能用 B8601DT.
标签:03,01,06,format,ISO8601,2022,SAS,input 来源: https://www.cnblogs.com/zooz-logging/p/16698079.html