GMTOFF计算r中
问题描述:
我有日期分配到GMTOFF计算r中
%let a=06jul2016
我想基于两个计算在SAS
做b=dhms("&a"d,00,00,00)-gmtoff(),IS8601DT23.3))
c=dhms("&a"d,24,00,00)-gmtoff(),IS8601DT23.3))
注&创建两个变量将采取价值06jul2016
输出
b is 2016-07-06T04:00:00.00
c is 2016-07-07T04:00:00.00
我想用b和c创建一个新的变量D,并且字符串很少。
D=tz=2016-07-06T04:00:00.00&tz2016-07-07T04:00:00.00
如何,使用R
答
这应该不是太难,因为R将自动转换的任何日期为当前时区,如果你不明确提到一个时区,以获得上述结果:
a <- "06jul2016"
#Assuming you are in GMT+4, otherwise use the explicit
#conversion commented out below
b <- as.POSIXct(a,format="%d%b%Y")
#b <- as.POSIXct(a,format="%d%b%Y",tz="Etc/GMT+4")
attr(b, "tzone") <- "UTC"
format(b, "%Y%-%m-%dT%H:%M:%OS2")
#"2016-07-06T04:00:00.00"
为了获得额外的一天,尝试:
format(b + as.difftime(1, units="days"), "%Y%-%m-%dT%H:%M:%OS2")
#[1] "2016-07-07T04:00:00.00"
'gmtoff()'存储原始UTC从目前的MAC偏移希望SAS代码能够运行,如果有人想知道的话。 – thelatemail