Есть ли способ упростить этот код, используя al oop? - PullRequest
0 голосов
/ 28 мая 2020

Есть ли способ упростить этот код, используя al oop?

VariableList <- c(v0,v1,v2, ... etc)

National_DF <- df[,VariableList]
AL_DF <- AL[,VariableList]
AR_DF <- AR[,VariableList]
AZ_DF <- AZ[,VariableList]
... etc

Я хочу, чтобы конечный результат имел каждый как фрейм данных, поскольку он будет использоваться позже в модели. Каждое состояние, такое как «AL», «AR», «AZ» и т. Д. c, является фреймами данных. V {#} представляет неуместную переменную из кадра данных RAW. Это предназначено для реструктуризации полей с одновременным удалением некоторых полей для подготовки к использованию модели.

1 Ответ

2 голосов
/ 28 мая 2020

Продолжая ответ на ваш предыдущий вопрос , мы можем упорядочить данные в том же вызове lapply перед созданием фреймов данных.

VariableList <- c('v0','v1','v2')

data <- unlist(lapply(mget(ls(pattern = '_DF$')), function(df) {
    index <- sample(1:nrow(df), 0.7*nrow(df))
    df <- df[, VariableList]
    list(train = df[index,], test = df[-index,])  
}), recursive = FALSE)

Затем получить данные в глобальной среде:

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