如何在R中的时间戳中处理时区?

LéoLéopoldHertz Jun-young

我将非UTC时区时间定为2016年8月17日瑞典时区(UTC + 1)的21:41。每个条目都有两个这样的录音。我正在考虑如何将它们很好地记录在CSV文件中。我想首先将它们手动转换为Unix时间戳,但随后,开始考虑维护原始时区等170820162141,并为时区单独列。但是,我仍然认为这些版本不是任何标准。我确实知道如何基于线程生成Unix时间戳如何生成Unix时间戳?以下命令结构在这里也可以工作。

% https://stackoverflow.com/a/2764285/54964
date -j -f "%a %b %d %T %Z %Y" "`date`" "+%s"

我将使用R/ Bash/ Zsh/ ..读取CSV文件。我的建议

  • 自定义时间戳等前一个,例如170820162141没有秒
  • 时区等独立列 UTC+1

CSV档案范例

Time_start, Time_end, Time_start_timezone
170820162141, 180820160901, UTC+1

测试功能伪代码

Count time difference between two custom timestamps.  

反复思考的提议

我将数据更改为

  1. 中的时区+0100(UTC + 1)相加, , , 03012011-2011+0100, 03022011-2011+0100
  2. 格式化strptime(from,format="%d%m%Y-%H%M%z我在其中添加%z的时区。
  3. data如果将时区正确设置为给定数据,则打印将正确显示所有时间。

代码Rscript script.r在五列数据上运行,其中时间数据在最后两列

library('methods')
# https://unix.stackexchange.com/a/363290/16920
setClass('iso8601')

#03012011-2011
setAs("character","iso8601",function(from) strptime(from,format="%d%m%Y-%H%M%z"))
data <- read.csv("/home/masi/Documents/Data/log.csv", colClasses=c(NA, NA, NA, "iso8601","iso8601"), header=TRUE) # my particular case

data

输出:完美!由于我的时区经常更改,因此我必须根据数据正确调整时区。

  • 没有library('methods'),你会得到Rscript Error: could not find function "setClass"

ISO 8601是一种可能的格式。它可以包含时区偏移量,并且可以使用strptime多种语言进行解析

$ cat x
2017-05-05T18:25:28+0100,2017-05-05T18:33:22+0100,foo
2017-05-05T18:34:21+0100,2017-05-05T18:38:52+0100,bar
$ R -q --silent --no-save
> R.version.string
[1] "R version 3.4.0 (2017-04-21)"
> setClass('iso8601')
> setAs("character","iso8601",function(from) strptime(from,format="%Y-%m-%dT%H:%M:%S%z"))
> data=read.csv("x",colClasses=c("iso8601","iso8601",NA),header=FALSE)
> data
                   V1                  V2  V3
1 2017-05-05 17:25:28 2017-05-05 17:33:22 foo
2 2017-05-05 17:34:21 2017-05-05 17:38:52 bar
> 

并且date这样可以生成ISO 8601格式的日期:

$ date "+%Y-%m-%dT%H:%M:%S%z"
2017-05-05T19:20:58+0000
$ TZ=US/Pacific date "+%Y-%m-%dT%H:%M:%S%z"
2017-05-05T12:21:10-0700
$ 

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在UTC时区中设置Rails日志时间戳?

来自分类Dev

如何在PHP中获取带有时区的ISO 8601格式的时间戳

来自分类Dev

如何在PHP中获取带有时区的ISO 8601格式的时间戳

来自分类Dev

如何在PostgreSQL中减去没有时区的时间戳

来自分类Dev

如何基于时区在MySQL中存储时间戳?

来自分类Dev

如何在脚本中处理MySQL时区

来自分类Dev

在Oracle中显示与时间戳关联的时区

来自分类Dev

从BigQuery中的时间戳获取时区名称

来自分类Dev

wget本地时区中的文件时间戳

来自分类Dev

PostgreSQL 9.6 中带时区的时间戳

来自分类Dev

如何在Telethon事件处理程序中获取特定时区的时间

来自分类Dev

如何在Firebase中验证时间戳?

来自分类Dev

如何在js中验证时间戳

来自分类Dev

如何在Swift中解析/创建以小数秒UTC时区(ISO 8601,RFC 3339)格式设置的日期时间戳?

来自分类Dev

如何从Big Query中的UTC时间戳显示Data Studio中本地时区的日期/时间

来自分类Dev

如何解析R中的时间戳?

来自分类Dev

带日期或不带时区的带有日期或时间戳的查询中的generate_series()处理

来自分类Dev

如何在Orion中存储时间戳或日期时间?

来自分类Dev

如何在MySQL时间戳中设置时间?

来自分类Dev

如何在Orion中存储时间戳或日期时间?

来自分类Dev

如何将Etc / GMT + 2时区中的时间戳转换为Unix时间戳?

来自分类Dev

在 SQL 中的文本中插入带时区的时间戳

来自分类Dev

如何在Redshift中使用GMT时区转换时间戳?

来自分类Dev

如何在RailsAdmin中设置日期时间值的时区

来自分类Dev

如何在XCode中获取当前时间和时区?

来自分类Dev

如何在 jmeter 中获取 GMT 时区当前时间

来自分类Dev

在Python中,如何打印FULL ISO 8601时间戳,包括当前时区

来自分类Dev

在SQL(PostgreSQL)中如何基于“无时区的时间戳”列进行分组?

来自分类Dev

将PostgreSQL时间戳与sql查询中的时区进行比较

Related 相关文章

  1. 1

    如何在UTC时区中设置Rails日志时间戳?

  2. 2

    如何在PHP中获取带有时区的ISO 8601格式的时间戳

  3. 3

    如何在PHP中获取带有时区的ISO 8601格式的时间戳

  4. 4

    如何在PostgreSQL中减去没有时区的时间戳

  5. 5

    如何基于时区在MySQL中存储时间戳?

  6. 6

    如何在脚本中处理MySQL时区

  7. 7

    在Oracle中显示与时间戳关联的时区

  8. 8

    从BigQuery中的时间戳获取时区名称

  9. 9

    wget本地时区中的文件时间戳

  10. 10

    PostgreSQL 9.6 中带时区的时间戳

  11. 11

    如何在Telethon事件处理程序中获取特定时区的时间

  12. 12

    如何在Firebase中验证时间戳?

  13. 13

    如何在js中验证时间戳

  14. 14

    如何在Swift中解析/创建以小数秒UTC时区(ISO 8601,RFC 3339)格式设置的日期时间戳?

  15. 15

    如何从Big Query中的UTC时间戳显示Data Studio中本地时区的日期/时间

  16. 16

    如何解析R中的时间戳?

  17. 17

    带日期或不带时区的带有日期或时间戳的查询中的generate_series()处理

  18. 18

    如何在Orion中存储时间戳或日期时间?

  19. 19

    如何在MySQL时间戳中设置时间?

  20. 20

    如何在Orion中存储时间戳或日期时间?

  21. 21

    如何将Etc / GMT + 2时区中的时间戳转换为Unix时间戳?

  22. 22

    在 SQL 中的文本中插入带时区的时间戳

  23. 23

    如何在Redshift中使用GMT时区转换时间戳?

  24. 24

    如何在RailsAdmin中设置日期时间值的时区

  25. 25

    如何在XCode中获取当前时间和时区?

  26. 26

    如何在 jmeter 中获取 GMT 时区当前时间

  27. 27

    在Python中,如何打印FULL ISO 8601时间戳,包括当前时区

  28. 28

    在SQL(PostgreSQL)中如何基于“无时区的时间戳”列进行分组?

  29. 29

    将PostgreSQL时间戳与sql查询中的时区进行比较

热门标签

归档