В настоящее время я работаю в R, используя data.table, и пытаюсь выполнить список шагов обработки данных в длинном списке таблиц данных. У меня есть некоторые отдельные шаги и шаги, но я не уверен, как связать шаги вместе в функцию, чтобы мой список таблиц данных проходил через каждый шаг, а затем выходил в конце, объединенном с помощью rbindlist.
Вот шаги обработки данных, над которыми я работаю: 1) разделить все таблицы данных до одной переменной - "name" 2) преобразовать каждую таблицу данных, содержащую эту переменную, из длинного в широкий 3) добавить переменная "data_set", которая будет содержать имя каждой таблицы в ней 4) объединить таблицы данных вместе в одну большую таблицу данных с помощью rbindlist
Вот фрагменты кода, которые у меня есть, но я не уверен, как собрать вместе в одну функцию, так что один список передается от одного шага к следующему:
data_tables<-c("symp", "care", "meds")
#1)subset out variable "name" from each data table
one<-lapply(mget(data_tables),function(x)x[, .("name")])
#2)convert from long to wide format - I'm unsure how to send the previous list "one" from the
last lapply to the next step
dt<-dt[, as.list(table(name))]
#3)add variable "data_set" containing name of each data set in list
one_1 <- Map(function(x, nm) as.data.table(x)[, data_set := nm], mget(one), one)
#4)combine list of data tables together using rbindlist
combined<-rbindlist(one_1, use.names=TRUE, fill=TRUE, idcol=NULL)