2016-01-03 3 views
0

Как изменить персонажа, похожего на "01.01.2016 16:33:03", на дату? Я уже пробовал:Изменить символ в специальном формате на дату

data$Date <- as.Date(data$Date, origin = "%d.%m.%Y %H:%M:%S") 

но просто получить сообщение об ошибке, character string is not in a standard unambiguous format

+2

Измените 'origin' на' format'. Но это просто даст вам дату. Если вы хотите время, используйте 'as.POSIXct' вместо' as.Date'. – eipi10

ответ

1

попробовать что-то вроде этого:

this = "01.01.2016 16:33:03" 
as.POSIXct(this, format = "%m.%d.%Y %H:%M:%S") 

Определенно проверить ?POSIXct для полной документации. Основной момент, который может вас смутить, состоит в том, что вам нужно определить format как формат, который является текущей в настоящее время, и НЕ, каким вы хотите.

В то время как вы на нем, посмотрите также ?as.Date и пакет zoo, который имеет несколько аккуратных функций, таких как as.yearmon().

0

Другой вариант - lubridate.

library(lubridate) 
x <- '01.01.2016 16:33:03' 
y <- mdy_hms(x) 

Затем вы можете использовать month(y), day(y) и т.д., чтобы получить доступ к определенным частям даты.