Неважно, какой пакет вы используете — он преобразует объект даты/даты и времени в представление POSIXct секунд с начала эпохи. Таким образом, вы также можете сделать это в базе R — поэтому здесь разверните ISOdatetime()
с произвольным днем, используя сегодня:
R> difftime(ISOdatetime(2012,7,2,12,34,45), ISOdatetime(2012,7,2,0,0,0))
Time difference of 12.5792 hours
Итак, нам нужны секунды:
R> difftime(ISOdatetime(2012,7,2,12,34,45), ISOdatetime(2012,7,2,0,0,0),
+ unit="secs")
Time difference of 45285 secs
И мы можем привести к числам:
R> as.numeric(difftime(ISOdatetime(2012,7,2,12,34,45), +
ISOdatetime(2012,7,2,0,0,0), unit="secs"))
[1] 45285
Редактировать: Возвращаясь к смазке, возможно, это ошибка:
> hms("12:34:45") - hms("00:00:00")
[1] 12 hours, 34 minutes and 45 seconds
R> as.numeric(hms("12:34:45") - hms("00:00:00"))
[1] 45
R>
person
Dirk Eddelbuettel
schedule
02.07.2012
as.duration()
возможно? - person joran   schedule 02.07.2012