POSIXct из символа возвращает NA - PullRequest
0 голосов
/ 08 июня 2018

У меня есть время в Excel, когда при преобразовании в R он появляется как символ и выглядит примерно так 0.59658.

Я пытаюсь преобразовать в POSIXct, но он возвращается как POSIXct с NA.

teste <- as.POSIXct(test, format = "%H:%M")

Я также пробовал teste <- as.POSIXct(test, format = "%H:%M:%S") Для других столбцов он работает нормально, но не этот ..

ОБНОВЛЕНИЕ: Я сделал решение, но вторая проблема связана состальное, что мне нужно.

teste <- as.POSIXct(teste*24*60*60,"%H%M", origin="1970-01-01") 
teste <- format(as.POSIXct(teste, format = "%Y-%m-%d %H:%M:%S"), format="%H:%M")

А теперь я хочу вставить вектор даты, который является POSIXct в 2013-01-06, с помощью этой команды:

teste<-as.POSIXct(paste(date, teste), format="%Y-%m-%d %H:%M:%S")

И NA вернулись

1 Ответ

0 голосов
/ 08 июня 2018

Смущен тем, что именно вы хотите, но что не так с этой функцией:

df <- data.frame(number = c(0.59658, 0.59658, 0.59658, 0.59658, 0.59658), dates = c("2013-01-06", "2013-01-06", "2013-01-06", "2013-01-07", "2013-01-07"))
testing <- function(number, dates){
  teste <- as.POSIXct(number*24*60*60,"%H%M", origin="1970-01-01") 
  teste <- format(as.POSIXct(teste, format = "%Y-%m-%d %H:%M:%OS"), format="%H:%M")
  return(as.POSIXct(paste0(dates," ",teste)))
}

Что дает следующее при выполнении testing(df$number, df$dates):

 "2013-01-06 14:19:00 EST" "2013-01-06 14:19:00 EST" "2013-01-06 14:19:00 EST" "2013-01-07 14:19:00 EST" "2013-01-07 14:19:00 EST"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...