时区来自ISO 8601

时间:2016-07-13 11:48:38

标签: r string datetime iso8601

当使用ISO 8601格式的时间字符串时,如下所示:

"2016-07-04T17:00:00+02:00"

如何在R?

中将时区作为数字向量

1 个答案:

答案 0 :(得分:0)

作为变体,可以使用这种方式:

getTimeZone = function(time)
{
  last = substring(time, nchar(time), nchar(time));
  if(last == 'Z')
  {
    return(0);
  }
  else
  {
    mins = as.numeric(substring(time, nchar(time)-1, nchar(time)));
    hours = as.numeric(substring(time, nchar(time)-4, nchar(time)-3));

    timezone = hours + mins/60;
  }
}

现在,执行此操作时:

a = getTimeZone("2016-07-04T12:00:00Z")
b = getTimeZone("2016-07-04T12:00:00+02:30")
a
b

我们接下来:

[1] 0
[1] 2.5