У меня есть вектор, который определяет все возможные переменные, которые можно использовать для моделирования, который я называю model.data.dim.names
model.data.dim.names <- c('loan_term','lien_position','loan_amount', 'fico_score_bin', 'cltv_bin' ,'dti_bin','sub_channel', 'p_occupancy_type', 'customer_type', 'property_type', 'p_region')
Однако при моделировании мы объединяем некоторые из этих переменных в бины, а затем иногда также группируем их далее. Скажем, если я бен некоторые значения, я вызываю новую переменную
cltv if binned is called cltv_bin
if it is grouped further then new column is called cltv_bin_bin
И скажи, что моя окончательная форма модели такова:
modelform <- "abc ~ p_occupancy_type + customer_type + cltv_bin_bin + fico_score_bin_bin + dti_bin"
Вы можете получить переменные в форме модели, используя:
variables <- strapplyc(gsub(" ", "", format(modelform)), "-?[0-9.]+|[a-zA-Z0-9._]+", simplify = unlist)[-1]
Затем вы можете найти, существует ли переменная в model.data.dim.names, используя:
sapply(variables, agrep, model.data.dim.names, ignore.case = T, max.distance = 4)
Я хотел бы обновить только те элементы, которые использовались в модели, и позволить другим объектам оставаться в том же порядке в model.data.dim.names, чтобы получить это:
model.data.dim.names <- c('loan_term','lien_position','loan_amount', 'fico_score_bin_bin', 'cltv_bin_bin' ,'dti_bin','sub_channel_bin', 'p_occupancy_type', 'customer_type', 'property_type', 'p_region')
Пожалуйста, дайте мне знать, если нужна какая-либо другая информация