The trick is that immediately after you have trained your model, you know the order of the coefficients:
model_1 = linear_model.LinearRegression() model_1.fit(train_data[model_1_features], train_data['price']) print(list(zip(model_1.coef_, model_1_features)))
This will print the coefficients and the correct function. (Tested with pandas DataFrame)
If you want to reuse coefficients later, you can also put them in a dictionary:
coef_dict = {} for coef, feat in zip(model_1.coef_,model_1_features): coef_dict[feat] = coef
(You can test it yourself by training two models with the same functions, but as you said, you shuffled the order of the functions.)
source share