Create a filter manager and load filter definitions for the 'stats' feature. Then run the feature process using the filter manager to ingest features for different values of 'stats' feature separately.
>>> from teradataml import FilterManager
>>> fm = FilterManager(repo='vfs_v1', name='stats_filter_manager')
>>> fm
Filter Manager 'stats_filter_manager' does not exist. Run FilterManager.load_filter() to create it. FilterManager(repo=vfs_v1, name=stats_filter_manager, filters=None)
Load filter definitions for statistics features into the filter manager using a DataFrame.
>>> fm.load_filter(df=df2.groupby('stats').count()[['stats']])
True
>>> fm
FilterManager(repo=vfs_v1, name=stats_filter_manager, filters=3)
>>> fp = FeatureProcess(repo="vfs_v1", ... data_domain='sales', ... object=df2, ... entity='id', ... features=['masters', 'gpa', 'stats', 'admitted'])
>>> fp.run(filter_manager=fm)
Process '07741d30-4d47-11f1-a487-cf2ce15f3444' started.
Ingesting the features for filter_id=1: {"stats":"Advanced"} to catalog.
Ingesting the features for filter_id=2: {"stats":"Beginner"} to catalog.
Ingesting the features for filter_id=3: {"stats":"Novice"} to catalog.
Process '07741d30-4d47-11f1-a487-cf2ce15f3444' completed.
True
Verify the ingested feature values.
>>> fs.list_feature_catalogs()
data_domain feature_id table_name valid_start valid_end entity_name id sales 10 FS_T_11cc2784_e1c3_ac70_43d6_4cd711157202 2026-05-11 14:38:19.560000+00: 9999-12-31 23:59:59.999999+00: id sales 9 FS_T_e3c886c5_4c14_e9ae_dece_78bb144bf54e 2026-05-11 14:38:19.560000+00: 9999-12-31 23:59:59.999999+00: id sales 12 FS_T_e9b20a42_c625_414b_83e3_4882a2ffd424 2026-05-11 14:38:19.560000+00: 9999-12-31 23:59:59.999999+00: id sales 11 FS_T_e3c886c5_4c14_e9ae_dece_78bb144bf54e 2026-05-11 14:38:19.560000+00: 9999-12-31 23:59:59.999999+00:
Verify the feature data.
>>> dc = DatasetCatalog(repo='vfs_test', data_domain='sales')
>>> dc.build_dataset(entity='id',
... selected_features={
... 'masters': fp.process_id,
... 'stats': fp.process_id,
... 'gpa': fp.process_id},
... view_name='fm_view',
... description='Filter manager test')
id masters stats gpa 0 17 no Advanced 3.83 1 6 yes Beginner 3.50 2 38 yes Advanced 2.65 3 12 no Novice 3.65 4 7 yes Novice 2.33 5 15 yes Advanced 4.00 6 32 yes Advanced 3.46 7 19 yes Advanced 1.98 8 30 yes Advanced 3.79 9 36 no Advanced 3.00