1
0
mirror of https://github.com/microsoft/qlib.git synced 2026-07-02 02:21:18 +08:00

Add filter columns.

This commit is contained in:
lwwang1995
2020-12-05 22:44:04 +08:00
committed by you-n-g
parent bf8de72605
commit 65902e424c

View File

@@ -101,6 +101,23 @@ class DropCol(Processor):
mask = df.columns.isin(self.col_list)
return df.loc[:, ~mask]
class FilterCol(Processor):
def __init__(self, fields_group="feature", col_list=[]):
self.fields_group = fields_group
self.col_list = col_list
def __call__(self, df):
cols = get_group_columns(df, self.fields_group)
all_cols = df.columns
diff_cols = np.setdiff1d(all_cols.get_level_values(-1), cols.get_level_values(-1))
self.col_list = np.union1d(diff_cols, self.col_list)
if isinstance(df.columns, pd.MultiIndex):
mask = df.columns.get_level_values(-1).isin(self.col_list)
else:
mask = df.columns.isin(self.col_list)
return df.loc[:, mask]
class TanhProcess(Processor):
""" Use tanh to process noise data"""