Получить текущее время, включая секунды из Sys.Date () в R - PullRequest
10 голосов
/ 16 декабря 2011

Я уверен, что это довольно просто, но я не могу извлечь различные периоды времени из системной даты.Просто я не уверен, почему я не могу точно извлечь текущие минуты и секунды, используя% 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 Ответ

15 голосов
/ 16 декабря 2011

Для этого вы, вероятно, захотите использовать Sys.time() вместо Sys.Date().

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

Sys.Date возвращает объект Date, который, по сути, представляет собой строку символов в форме типа "YYYY-ММ-ДД».Он не записывает часы, минуты или секунды.

(Это было немного скрыто от вас при вызове format(Sys.Date, "%S"), потому что он отправил метод format.Date, который преобразует объект Date в POSIXlt объект, который имеет имеет часы, минуты и секунды. В этом преобразовании объект Date обрабатывается так, как если бы он представлял время в полночь по Гринвичу - следовательно, значение «00» всегдавозвращает элемент секунд.)

...