def test_handle_unknown_error(self): from lale.lib.sklearn import OrdinalEncoder fproc_oe = OrdinalEncoder(handle_unknown="error") # test_init_fit_transform trained_oe = fproc_oe.fit(self.X_train, self.y_train) with self.assertRaises( ValueError ): # This is repying on the train_test_split, so may fail randomly _ = trained_oe.transform(self.X_test)
def test_encode_unknown_with(self): from lale.lib.sklearn import OrdinalEncoder fproc_oe = OrdinalEncoder(handle_unknown="ignore", encode_unknown_with=1000) # test_init_fit_transform trained_oe = fproc_oe.fit(self.X_train, self.y_train) transformed_X = trained_oe.transform(self.X_test) # This is repying on the train_test_split, so may fail randomly self.assertTrue(1000 in transformed_X) # Testing that inverse_transform works even for encode_unknown_with=1000 _ = trained_oe._impl.inverse_transform(transformed_X)
def test_inverse_transform(self): from lale.lib.sklearn import OneHotEncoder, OrdinalEncoder fproc_ohe = OneHotEncoder(handle_unknown="ignore") # test_init_fit_transform trained_ohe = fproc_ohe.fit(self.X_train, self.y_train) transformed_X = trained_ohe.transform(self.X_test) orig_X_ohe = trained_ohe._impl._wrapped_model.inverse_transform(transformed_X) fproc_oe = OrdinalEncoder(handle_unknown="ignore") # test_init_fit_transform trained_oe = fproc_oe.fit(self.X_train, self.y_train) transformed_X = trained_oe.transform(self.X_test) orig_X_oe = trained_oe._impl.inverse_transform(transformed_X) self.assertEqual(orig_X_ohe.all(), orig_X_oe.all())