从R中的Sys.Date()获取当前时间,包括秒数

时间:2011-12-16 17:41:23

标签: r datetime-format

我确信这是非常基本的,但我无法从系统日期中提取各种时间。简单地说,我不确定为什么我无法使用%M或%S准确提取当前的分钟数和秒数。有什么想法吗?

现在是我机器上的下午12:38。

> format(Sys.Date(), "%c")
[1] "12/16/2011 12:00:00 AM"

> R.Version()
$platform
[1] "i386-pc-mingw32"

$arch
[1] "i386"

$os
[1] "mingw32"

$system
[1] "i386, mingw32"

$status
[1] ""

$major
[1] "2"

$minor
[1] "14.0"

$year
[1] "2011"

$month
[1] "10"

$day
[1] "31"

$`svn rev`
[1] "57496"

$language
[1] "R"

$version.string
[1] "R version 2.14.0 (2011-10-31)"

1 个答案:

答案 0 :(得分:15)

为此,您可能希望使用Sys.time()代替Sys.Date()

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

Sys.Date返回一个Date对象,该对象本质上是一个像“YYYY-MM-DD”这样的形式的字符串。它不记录小时,分钟或秒。

(在您对format(Sys.Date, "%S")的调用中,这有点隐藏了,因为它调度了一个方法,format.DateDate对象转换为<{1}}对象 有小时,分钟和秒。在该转换中,POSIXlt对象被视为表示格林威治标准时间午夜的时间 - 因此它总是返回“00”的值秒元素。)