элементы привязки столбцов вектора в список - PullRequest
0 голосов
/ 24 июня 2019

У меня есть список из 18. каждый фрейм данных в списке содержит 25 строк и 18 столбцов. У меня есть вектор компаний для этих 18 фреймов данных. Мне нужно добавить новый столбец к каждому списку в фрейме данных так, чтобы первый столбец каждого фрейма данных был название компании. Первый фрейм данных должен иметь первый столбец в качестве первого названия компании, второй фрейм данных со вторым названием компании и т. Д. Название компании должно быть записано во всех строках соответствующих фреймов данных. Как это сделать?

1 Ответ

0 голосов
/ 24 июня 2019

Предположим, вектор с именами компаний равен df_vector. Тогда вы можете использовать purrr::map2(df_vector, df_list, cbind). Он создаст список с тем же числом компонентов, что и у df_list (здесь 15), и у всех этих фреймов данных будет первый столбец в качестве соответствующего названия компании.

На следующем рисунке я предположил, что имена - это первые 15 букв.

set.seed(seed = 1234)

Dates <- seq(from = as.Date(x = "1990-01-01"),
             to = as.Date(x = "1994-12-31"),
             by = "month")
n <- length(x = Dates)

df_list <- lapply(X = 1:15,
                  FUN = function(i)
                  {
                    tmp <- matrix(data = rnorm(n = 5 * n),
                                  ncol = 5)
                    tmp <- apply(X = tmp,
                                 MARGIN = 2,
                                 FUN = cumsum)
                    colnames(x = tmp) <- paste0("Var", 1:5)
                    tmp <- as.data.frame(x = tmp)
                    tmp$Date <- Dates
                    tmp
                  })

df_vector <- letters[1:15]

purrr::map2(.x = df_vector,
            .y = df_list,
            .f = cbind)

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...