R:根据模型形式更新向量

时间:2019-06-03 18:06:41

标签: r vector

我有一个向量,该向量定义了所有可用于建模的变量,我将其称为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')

但是,在建模时,我们将其中一些变量汇总到bin中,然后有时还会将它们进一步分组。假设,如果我将某些值加仓,我将调用新变量

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')

请让我知道是否需要其他信息

0 个答案:

没有答案