首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在R中将数字时间转换为日期和时间格式

如何在R中将数字时间转换为日期和时间格式
EN

Stack Overflow用户
提问于 2019-04-16 03:31:39
回答 2查看 271关注 0票数 0

尝试为我的数据构建一个xts。日期可以,但我不知道如何将“时间”栏转换为时间格式。时间以数字形式存储,数据如下所示:

代码语言:javascript
复制
      date time  price
1 19900102  930 353.40
2 19900102  931 353.25
3 19900102  932 353.02
4 19900102  933 352.97
5 19900102  934 352.81
6 19900102  935 352.74

我尝试了下面的代码,但它不能工作。

代码语言:javascript
复制
sp500.xts <-  as.xts(sp500[,3],order.by=as.POSIXct(strptime(paste(as.character(sp500[,1]),as.character(sp500[,2])),"%Y%m%d %H:%M")))

感谢所有帮助我们的人。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-04-16 03:58:20

来自lubridateparse_date_timetimetk包的铁杆粉丝:

代码语言:javascript
复制
library(tidyverse)
library(lubridate)
library(timetk)

test %>%
  mutate(date = parse_date_time(paste(date, str_pad(time, 4, side = "left", pad = "0")), "YmdHM")) %>%
  select(-time) %>%
  tk_xts(silent = T)

                     price
1990-01-02 09:30:00 353.40
1990-01-02 09:31:00 353.25
1990-01-02 09:32:00 353.02
1990-01-02 09:33:00 352.97
1990-01-02 09:34:00 352.81
1990-01-02 09:35:00 352.74
票数 0
EN

Stack Overflow用户

发布于 2019-04-16 03:44:29

假设使用930 = 09:30,可以尝试这样做:

timec用于填充以获取完整的hm;dtc用于获取完整的日期时间,然后使用ymd_hm将其读取为datetime格式。

代码语言:javascript
复制
library(tidyverse)

library(lubridate)


test %>% 
  mutate(timec = str_pad(time, 4, side = 'left', pad = '0'),
         dtc = str_c(date, timec),
         dt = ymd_hm(dtc))

> test %>% 
+   mutate(timec = str_pad(time, 4, side = 'left', pad = '0'),
+          dtc = str_c(date, timec),
+          dt = ymd_hm(dtc))
      date time  price timec          dtc                  dt
1 19900102  930 353.40  0930 199001020930 1990-01-02 09:30:00
2 19900102  931 353.25  0931 199001020931 1990-01-02 09:31:00
3 19900102  932 353.02  0932 199001020932 1990-01-02 09:32:00
4 19900102  933 352.97  0933 199001020933 1990-01-02 09:33:00
5 19900102  934 352.81  0934 199001020934 1990-01-02 09:34:00
6 19900102  935 352.74  0935 199001020935 1990-01-02 09:35:00
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55696103

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档