R Преобразование даты и времени в фактическую строку - PullRequest
0 голосов
/ 08 января 2020

Я пытаюсь преобразовать дату в фактическую строку. Но когда я использую as.character (x), он возвращает значение, которое я не могу преобразовать в дату или время.

например:

Когда я извлекаю данные из определенной ячейки в фрейме данных, возвращается:

> df[1,6]
# A tibble: 1 x 1
  `PLS FFM`          
  <dttm>             
1 2019-12-14 06:47:00

Когда я пытаюсь преобразовать их в строку, это возвращает:

> (as.character(df[1,6]))
[1] "1576306020"

Но когда я пытаюсь преобразовать строку или datetime () в формат даты, он возвращает:

> as.Date(as.character(df[1,6]))
Error in charToDate(x) : 
  character string is not in a standard unambiguous format

Я все готово искал по inte rnet часами пытаясь найти решение, но мне кажется, что я либо делаю что-то не так, либо я действительно очень глуп.

Может кто-нибудь мне помочь !?

Спасибо,

JOP

Ответ спасибо Ронаку Шаху!

После того, как Ронак предложил мне преобразовать весь вектор в формате, который я смог преобразовать отформатированный вектор для даты + времени, который я могу использовать в своем скрипте, где я делаю много вычислений со временем. Я использовал:


df$'PLS FFM' <- format(df$'PLS FFM')
df$'PLS FFM' <- as.POSIXCT(df$'PLS FFM') 

Благодаря Ronak

1 Ответ

1 голос
/ 08 января 2020

Поскольку df[1,6] по-прежнему является тибблом, использование as.character на нем не работает. Вам нужно передать вектор в as.character, что можно сделать с помощью

as.character(df$`PLS FFM`)
#OR
#as.character(df[["PLS FFM"]])

. Мы также можем использовать format

format(df$`PLS FFM`)

Если вам нужно конкретное значение c из фрейм данных, используйте

as.character(df$`PLS FFM`[1])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...