我确信这是非常基本的,但我无法从系统日期中提取各种时间。简单地说,我不确定为什么我无法使用%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)"
答案 0 :(得分:15)
为此,您可能希望使用Sys.time()
代替Sys.Date()
。
format(Sys.time(), "%S")
Sys.Date
返回一个Date
对象,该对象本质上是一个像“YYYY-MM-DD”这样的形式的字符串。它不记录小时,分钟或秒。
(在您对format(Sys.Date, "%S")
的调用中,这有点隐藏了,因为它调度了一个方法,format.Date
将Date
对象转换为<{1}}对象 有小时,分钟和秒。在该转换中,POSIXlt
对象被视为表示格林威治标准时间午夜的时间 - 因此它总是返回“00”的值秒元素。)