Character to DateTime в Data Frame'е
-
- Гуру
- Сообщения: 964
- Зарегистрирован: 22 май 2010, 20:20
- Репутация: 154
Character to DateTime в Data Frame'е
Пожалуйста, разъясните:
в Data Frame'е есть колонка символьная для времени по маске
"YYYY-MM-DD HH:MM:SS"
Как эту колонку превратить в колонку типа DateTime, если таковой, конечно в R есть?
Мне надо получать разность значений по этой колонке между её значением в текущей строке
и в предыдущей строке в секундах.
в Data Frame'е есть колонка символьная для времени по маске
"YYYY-MM-DD HH:MM:SS"
Как эту колонку превратить в колонку типа DateTime, если таковой, конечно в R есть?
Мне надо получать разность значений по этой колонке между её значением в текущей строке
и в предыдущей строке в секундах.
-
- Гуру
- Сообщения: 964
- Зарегистрирован: 22 май 2010, 20:20
- Репутация: 154
Re: Character to DateTime в Data Frame'е
Решил так:nickleb писал(а):Пожалуйста, разъясните:
в Data Frame'е есть колонка символьная для времени по маске
"YYYY-MM-DD HH:MM:SS"
Как эту колонку превратить в колонку типа DateTime, если таковой, конечно в R есть?
Мне надо получать разность значений по этой колонке между её значением в текущей строке
и в предыдущей строке в секундах.
Код: Выделить всё
#"DtFr" - имя Data Frame'а;
#"Date_Time" - имя колонки, которая содержит символьное представление даты..
#например: "2015-06-21 18:00:00"
> DtFr$"Date_Time" <- as.POSIXct(DtFr$"Date_Time",format="%Y-%m-%d %H:%M:%S")
-
- Активный участник
- Сообщения: 205
- Зарегистрирован: 20 фев 2013, 21:48
- Репутация: 30
Re: Character to DateTime в Data Frame'е
можно преобразовать через
tt<-as.POSIXlt(DtFr$"Date_Time",format="%Y-%m-%d %H:%M:%S")
и тогда доступны секунды отдельно
tt$sec
а так же доступны все другие части даты
tt$min
tt$hour
tt$mday
tt$mon
и т.д.
tt<-as.POSIXlt(DtFr$"Date_Time",format="%Y-%m-%d %H:%M:%S")
и тогда доступны секунды отдельно
tt$sec
а так же доступны все другие части даты
tt$min
tt$hour
tt$mday
tt$mon
и т.д.
-
- Гуру
- Сообщения: 964
- Зарегистрирован: 22 май 2010, 20:20
- Репутация: 154
Re: Character to DateTime в Data Frame'е
Вот только хотел "поспрошать" о размерности вывода, а Вы ответили с упреждением. Спасибо!sergsh писал(а):можно преобразовать через
tt<-as.POSIXlt(DtFr$"Date_Time",format="%Y-%m-%d %H:%M:%S")
и тогда доступны секунды отдельно
tt$sec
а так же доступны все другие части даты
tt$min
tt$hour
tt$mday
tt$mon
и т.д.
-
- Гуру
- Сообщения: 4056
- Зарегистрирован: 15 окт 2010, 08:33
- Репутация: 1054
- Ваше звание: программист
- Откуда: Казань
Re: Character to DateTime в Data Frame'е
из личного опыта. Все эти asPosix норовят всякие timezone использовать, так что можно (учитывая фиксированный формат) выдирать числа с помощью p.YYYY<-as.integer(substr(s,1,4)) и т.д. ... а потом собрать DateTime
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 25 гостей