Значения POSIXct - это просто количество секунд с полуночи GMT 1970-01-01. (Так что вам нужно обратить внимание на смещение от UTC.) Вы можете использовать часть даты и добавить количество дней, умноженное на 24 * 3600 (as.Date (dtval), к вашему значению времени * 24 * 3600. статья в R News (которую он написал, спасибо, Габор.)
Вы не привели пример строки. Если вы получаете дату в виде строки, то as.Date (strDate) преобразует переменную "strDate" в класс Date, если она имеет формат "YYYY-MM-DD" или "YYYY / MM / DD". В противном случае коды форматирования находятся на странице? Strptime.
Если у вас есть переменная POSIXct, вы можете просто добавить количество секунд. В этом примере добавьте 30 минут до полуночи сегодня, 1 февраля 2011 г. (в моем часовом поясе, который называется UTC-5):
> as.POSIXct(as.Date("2011-02-01")) +30*60
[1] "2011-01-31 19:30:00 EST"
И это ваше время, добавленное к полуночи моего времени:
> as.POSIXct(as.Date("2011-02-01 00:00", tzone="UTC"))+3600*5 + 3600*24*timeval
[1] "2011-02-01 03:29:59 EST"