Удаление даты из столбца даты и времени R - PullRequest
0 голосов
/ 28 апреля 2020

В моем наборе данных excel (.xlsx) есть столбец раз (с именем "necro_time"; отформатированный %H:%M:%S). Когда я импортирую свои данные («тест») с помощью функции read_excel (библиотека readxl), он автоматически форматирует мой временной столбец как POSIXct в формате Y-M-D H:M:S, по существу применяя случайную дату «1899-12 -31 "к каждому из моих времен. Когда я использую функцию strptime, чтобы попытаться убрать дату, чтобы сохранить только время, которое она возвращает NA с. Я перепробовал все комбинации форматов даты и времени, а также создал новые столбцы и попытался разобрать дату и время таким образом (не то, что я хочу делать в любом случае), и ничего не работает.

Совет?

структура моего фрейма данных:

> str(test)


Classes ‘tbl_df’, ‘tbl’ and 'data.frame':   1051 obs. of  43 variables:

 ...

 $ necro_date               : POSIXct, format: "1900-01-01" "2018-12-19" "2018-12-19" ...

 $ necro_time               : POSIXct, format: "1899-12-31 23:59:00" "1899-12-31 11:12:00" "1899-12-31 11:03:00" ...

код, который я пытаюсь запустить:

test$necro_time = (strptime(test$necro_time, format = "%H:%M:%S")

возвращает:

> str(test)

Classes ‘tbl_df’, ‘tbl’ and 'data.frame':   1051 obs. of  43 variables:

...

 $ necro_date               : POSIXct, format: "1900-01-01" "2018-12-19" "2018-12-19" ...

 $ necro_time               : POSIXct, format: NA NA NA ...

Я также пытался:

test$necro_time = as.POSIXct(strptime(test$necro_time, format = "%Y-%M-%D"))

test$necro_time = as.POSIXct(strptime(test$necro_time, format = "%Y-%M-%D %H:%M:%S"))

test$necro_time = strptime(test$necro_time, format = "%I:%M %p")

все возвращают полный столбец NA с. Я чувствую, что это что-то простое, но я не могу понять, что я делаю неправильно. Заранее спасибо.

...