Невозможно преобразовать список столбцов данных в традиционный вектор кадра - PullRequest
0 голосов
/ 09 мая 2018

Проблема с фреймом данных, где один из столбцов представляет собой список дат. Нужно преобразовать список в векторный столбец во фрейме данных.

когда я использую head(output) даты отображаются правильно. Когда я просматриваю данные, они отображаются правильно. когда я использую output$date, я получаю:

(пример)

[[239]]
character(0)

[[240]]
character(0)

[[241]]
character(0)

[[242]]
[1] "05/01/2018"

Несколько раз ходил по сети, пробовал:

unlist(output$date)         

с датой, являющейся столбцом, являющимся списком

попытался использовать dplyr для:

output2 <- data.frame(output) %>% mutate(output$Date %>% unlist())

попытался использовать use.names = false

unlist(output$Date, use.names=FALSE)

1 Ответ

0 голосов
/ 09 мая 2018

Вы можете использовать tidyr::unnest для расширения столбца, содержащего list в data.frame.

library(tidyr)

#Sample data.frame
df <- data.frame(sl = 1:2)
#List of dates added as 2nd column
df$Date <- list(A = c(as.Date("2018-01-01"), as.Date("2018-01-02"), as.Date("2018-01-03")),
                B = c(as.Date("2018-02-01"), as.Date("2018-02-02"), as.Date("2018-02-03")))

unnest(df)

#   sl       Date
# 1  1 2018-01-01
# 2  1 2018-01-02
# 3  1 2018-01-03
# 4  2 2018-02-01
# 5  2 2018-02-02
# 6  2 2018-02-03
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...