avoid_generating_more_column_than_data (#332)

This commit is contained in:
Xu Yang
2024-09-25 16:41:08 +08:00
committed by GitHub
parent ef711588cd
commit 32ec4d1ebf
2 changed files with 9 additions and 0 deletions
@@ -394,6 +394,13 @@ class FactorValueEvaluator(FactorEvaluator):
if version == 1:
feedback_str, _ = FactorSingleColumnEvaluator(self.scen).evaluate(implementation, gt_implementation)
conclusions.append(feedback_str)
elif version == 2:
input_shape = self.scen.input_shape
_, gen_df = self._get_df(gt_implementation, implementation)
if gen_df.shape[-1] > input_shape[-1]:
conclusions.append(
"Output dataframe has more columns than input feature which is not acceptable in feature processing tasks. Please check the implementation to avoid generating too many columns. Consider this implementation as a failure."
)
# Check if the index of the dataframe is ("datetime", "instrument")
feedback_str, _ = FactorOutputFormatEvaluator(self.scen).evaluate(implementation, gt_implementation)
@@ -128,6 +128,8 @@ class KGScenario(Scenario):
pickle.dump(X_test, open(data_folder / "X_test.pkl", "wb"))
pickle.dump(others, open(data_folder / "others.pkl", "wb"))
self.input_shape = X_train.shape
buffer = io.StringIO()
X_valid.info(verbose=True, buf=buffer, show_counts=True)
data_info = buffer.getvalue()