rbind список data.frames, сохраняя NULL-элементы в R

r list dataframe

1181 просмотра

1 ответ

400 Репутация автора

Я хотел бы из и преобразования элементов в НС с использованием R. Рассмотрим следующий пример,rbindlistdata.frameNULL

l <- list(data.frame(C1 = 1, C2 = 2),
          NULL,
          data.frame(C1 = 3))

# bind_rows results
dplyr::bind_rows(l)

#   C1 C2
# 1  1  2
# 2  3 NA

# Desired output
data.frame(C1 = c(1, NA, 3), C2 = c(2, NA, NA))

#   C1 C2
# 1  1  2
# 2 NA NA
# 3  3 NA
Автор: goclem Источник Размещён: 13.12.2016 11:26

Ответы (1)


3 плюса

106747 Репутация автора

Решение

Начнем с преобразования элементов NULL:

l <- lapply(l, function(x) if(is.null(x)) data.frame(C1 = NA) else x)

dplyr::bind_rows(l)
#  C1 C2
#1  1  2
#2 NA NA
#3  3 NA
Автор: Roland Размещён: 13.12.2016 11:35
Вопросы из категории :
32x32