簡體   English   中英

如何在R中將字符字段轉換為日期/時間格式?

[英]How do I convert a character field to date/time format in R?

這就是我的數據。 我想將日期和時間列轉換為時間戳並將其放在單個列中。

任何幫助表示贊賞。 謝謝

    DATE        TIME    CLOSE   HIGH    LOW     OPEN    VOLUME
1   20150216    1520    2283.85 2284    2275.6  2275.6  48309
2   20150216    1530    2282    2284    2273.15 2283.85 108856
3   20150218    920     2276.1  2280.1  2260.6  2280.1  94279
4   20150218    930     2271.6  2277.95 2271    2276.1  65932
5   20150218    940     2270.35 2275    2268.2  2271.6  53595
6   20150218    950     2270.65 2271.2  2265.55 2270.5  34546
7   20150218    1000    2274.15 2274.25 2268.65 2270.6  35414
8   20150218    1010    2270.1  2274.9  2267.1  2274.25 37334

你可以試試

df$DateTime <- as.POSIXct(sprintf('%08d %04d', df$DATE, df$TIME),
                               format ='%Y%m%d %H%M')
df1 <- df[-(1:2)]
head(df1,2)
#    CLOSE HIGH     LOW    OPEN VOLUME            DateTime
#1 2283.85 2284 2275.60 2275.60  48309 2015-02-16 15:20:00
#2 2282.00 2284 2273.15 2283.85 108856 2015-02-16 15:30:00

更新

如果您需要轉換為xts ,而不是創建新列,我們可以刪除不需要的列( df[-(1:2)] ),並將order.by指定為日期時間向量('indx')

library(xts)
indx <- as.POSIXct(sprintf('%08d %04d', df$DATE, df$TIME),
                               format ='%Y%m%d %H%M')
xt1 <- xts(df[-(1:2)], order.by=indx)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM