Я довольно новичок в featuretools и пытаюсь понять, можно ли и как добавить интересные значения в набор сущностей, созданный с использованием нескольких функций.
Например, у меня есть сущность с двумя сущностями: клиенты и транзакции. Транзакции могут быть дебетовыми или кредитными (c_d) и могут происходить в разных категориях расходов (tran_category) - рестораны, одежда, бакалея и т. Д.
Пока я могу создавать интересные значения для любой из этих функций, но не из их комбинации:
import featuretools as ft
x = ft.EntitySet()
x.entity_from_dataframe(entity_id = 'customers', dataframe = customer_ids, index = cust_id)
x.entity_from_dataframe(entity_id = 'transactions', dataframe = transactions, index = tran_id, time_index = 'transaction_date')
x_rel = ft.Relationship(x['parties']['cust_id'], x['transactions']['cust_id])
x.add_relationship(x_rel)
x['transactions']['d_c'].interesting_values = ['D', 'C']
x['transactions']['tran_category'].interesting_values = ['restaurants', 'clothing', 'groceries']
Как я могу добавить интересное значение, которое объединяет значения из c_d и tran_category? (т. е. дебеты в ресторанах, кредиты на продукты, дебеты одежды и т. д.). Цель состоит в том, чтобы затем использовать эти интересные значения для агрегирования по суммам транзакций, времени между транзакциями и т. Д. С использованием where_primitives:
feature_matrix, feature_defs = ft.dfs(entityset = x, target_entity = 'customers', agg_primitives = list_of_agg_primitives, where_primitives = list_of_where_primitives, trans_primitives = list_of_trans_primitives, max_depth = 3)