Define feature_names_in_. (#7526)

* Define `feature_names_in_`.
* Raise attribute error if it's not defined.
This commit is contained in:
Jiaming Yuan
2022-01-05 01:35:34 +08:00
committed by GitHub
parent 8f0a42a266
commit eb1efb54b5
2 changed files with 17 additions and 0 deletions

View File

@@ -372,6 +372,9 @@ def test_boston_housing_regression():
assert mean_squared_error(preds3, labels) < 25
assert mean_squared_error(preds4, labels) < 350
with pytest.raises(AttributeError, match="feature_names_in_"):
xgb_model.feature_names_in_
def run_boston_housing_rf_regression(tree_method):
from sklearn.metrics import mean_squared_error
@@ -1017,6 +1020,8 @@ def test_pandas_input():
train = df.drop(columns=['status'])
model = xgb.XGBClassifier()
model.fit(train, target)
np.testing.assert_equal(model.feature_names_in_, np.array(feature_names))
clf_isotonic = CalibratedClassifierCV(model,
cv='prefit', method='isotonic')
clf_isotonic.fit(train, target)