Добавьте переменную к каждому фрейму данных в списке, равном именам фрейма данных - PullRequest
1 голос
/ 02 апреля 2020

У меня есть список фреймов данных с именами лет (т. Е. 2020, 2021, 2022 и т. Д. c.). Я хочу добавить переменную года к каждому фрейму данных, равную его имени. Я смог добавить переменную года = NA, но не смог понять, как ссылаться на имя фрейма данных. Код у меня до сих пор ниже:

data_list <- lapply(data_list, function(x) cbind(x, Year = NA))

Спасибо.

1 Ответ

0 голосов
/ 02 апреля 2020

В этом случае мы можем использовать Map до l oop над list и соответствующие имена столбцов list и cbind для создания нового столбца

data_list <- Map(cbind, data_list, Year = names(data_list))

Или в tidyverse

library(purrr)
library(dplyr)
data_list <- imap(data_list, ~ .x %>%
                          mutate(Year = .y))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...