簡體   English   中英

如何在R中將時間戳字符串“ 2014-07-20T05:11:49.988Z”轉換為POSIXt?

[英]How to convert time stamp string “2014-07-20T05:11:49.988Z” into POSIXt in R?

如何在R中將時間戳字符串“ 2014-07-20T05:11:49.988Z”轉換為POSIXt?

我想知道為什么第二個代表3個分位數? 在時間戳的末尾附加“ Z”又是什么意思? 任何人都可以知道如何將字符串轉換為R中的時間

“ Z”是UTC的簡寫 您可以使用

x <- as.POSIXct("2014-07-20T05:11:49.998Z", 
    format="%Y-%m-%dT%H:%M:%OSZ", tz="GMT")

請注意,通常您通常使用POSIXct或POSIXlt而不是直接使用POSIXt(兩者都將POSIXt作為基類)

lubridate軟件包具有非常強大的解析器,我傾向於在基數R中首選手動formatformat

library(lubridate)
#> 
#> Attaching package: 'lubridate'
#> The following object is masked from 'package:base':
#> 
#>     date

(t <- ymd_hms("2014-07-20T05:11:49.998Z"))
#> [1] "2014-07-20 05:11:49 UTC"

reprex軟件包 (v0.2.1)創建於2019-03-11

確保未打印的毫秒數也不會丟失:

second(t)
#> [1] 49.998

暫無
暫無

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

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