as.POSIXct只返回日期,而不是时间

时间:2018-02-16 15:19:25

标签: r posixct

我有一个数据库,我有一个包含三组日期和时间(总共六列)的事件列表。我想将其转换为POSIX以便稍后操作。问题是在创建三个新列以将日期和时间粘贴到单个字符串后,当我尝试转换为POSIX时,只有第一个是成功的,后两个只包含日期。

起初我以为可能有些条目没有时间,但我查了一下,哪些行都有两件事,只返回日期。

日期首先是欧洲格式,日期和时间列也是我阅读数据时的因素。我正在使用as.Date(data$DateAlert, format = '%d/%m/%Y')转换为新格式,之后我使用paste(data$DateAlert, data$HourAlert),创建POSIX格式的字符串,如2001-07-29 14:53:10。我已经确认包含这些字符串的列是类型字符,所以我猜POSIXct不会有太多麻烦。

在转换为POSIX之前,我得到类似的结果:

$ Alert      : chr  "2001-07-29 15:32:00" "2001-07-02 12:59:00" "2001-07-31 23:37:00" "2001-08-01 17:02:00"

$ Complete    : chr  "2001-07-29 17:20:00" "2001-07-03 02:39:00" "2001-08-01 02:53:00" "2001-08-01 17:24:00"

$ Inter       : chr  "2001-07-29 14:53:10" "2001-07-02 12:26:32" "2001-07-31 22:37:57" "2001-08-01 16:19:25"

转换为POSIX后,使用as.POSIXct()我得到这样的内容:

$ Alert      : POSIXct, format: "2001-07-29 15:32:00" "2001-07-02 12:59:00" "2001-07-31 23:37:00" "2001-08-01 17:02:00" ...

$ Complete    : POSIXct, format: "2001-07-29" "2001-07-03" "2001-08-01" "2001-08-01" ...

$ Inter       : POSIXct, format: "2001-07-29" "2001-07-02" "2001-07-31" "2001-08-01" ...

知道我做错了什么吗?我没有找到任何与此问题类似的线程

0 个答案:

没有答案