2015-09-10 43 views
0

各地如何可以提取小時的時間的所有部分,分秒和毫秒從此向量如何提取的時間

d = as.POSIXct(c("2015-09-08 17:42:07.456 GMT","2015-09-08 17:42:19.778 GMT")) 

library(lubridate) 
    hours = hour(d) 
    minutes = minute(d) 
    sec = d...? 
    milliseconds = d...? 

我試圖用lubridate包上面,但你如何讓第二和毫秒分開?

strsplit(as.character(second(d)), ".") 

回答

2
d = as.POSIXct(c("2015-09-08 17:42:07.456 GMT","2015-09-08 17:42:19.778 GMT")) 

library(lubridate) 
hours<- hour(d) 
minutes <- minute(d) 
sec <- floor(second(d)) 
milliseconds <- 1000*(second(d)-sec) 
+1

你說得對@Frank – HubertL

0

如果你想strsplit,你coud做strsplit(as.character(round(as.POSIXlt(d)$sec, 3)), ".", T)

5

無需包:

d <- as.POSIXct(c("2015-09-08 17:42:07.456 GMT","2015-09-08 17:42:19.778 GMT")) 

d1 <- as.POSIXlt(d) 

d1$sec 
## [1] 7.456 19.778 

d1$min 
## [1] 42 42 

d1$hour 
## [1] 17 17 

您可以從sec小數部分神交毫秒。

+2

我剛剛學了一個新單詞 –