R,如何在没有额外信息的情况下获取当前时间毫秒? (Sys.time(), 格式("%X"))

问题描述 投票:0回答:1

我尝试使用以下代码从 R 中的当前秒获取当前毫秒:


options("digits.secs" = 6) # since 6 is the maximum digits for seconds apparently

Sys.time()

因此,它返回带有毫秒的完整日期。

2024-10-09 14:35:51.687084 CEST

但是如果我只想得到毫秒,我该怎么办

format()

我已经尝试过了,

options(digits.secs = 6)

format(Sys.time(), "%X")

但它只返回以下内容:

14:35:51

我只是想让它回来

687084

我知道我可以执行以下操作,但它看起来并不理想:

options("digits.secs" = 6)
unlist(strsplit(x = as.character(Sys.time()), split = "\\."))[2]

你知道该怎么做吗?

谢谢。

r date time sys seconds
1个回答
0
投票

没有格式会给出秒的小数部分,您必须使用字符串函数从时间中提取。在下面的例子中,基函数

substring
.

secs_decimal <- function(x) {
  if(missing(x)) x <- Sys.time()
  substring(x, 21L)
}

# save the current setting
op <- options("digits.secs" = 6)
secs_decimal()
#> [1] "679491"
options(op)

创建于 2024-10-09,使用 reprex v2.1.0

© www.soinside.com 2019 - 2024. All rights reserved.