无法在具有其他数字和分类变量的数据集中创建基于时间的要素

问题描述 投票:1回答:1

我想要featuretools根据我在实体集中声明的时间索引和截止时间创建功能。

我有一个包含时间变量以及数字和分类变量的数据集。有一个ITEMID列,每个ITEMID有2到12行数据。

使用诸如开始日期和交易日期之类的列,各种数字和分类列。给定ITEMID的所有行的开始日期相同,而每行的事务日期不同。

这是实体集的代码

# creating and entity set 
entity_set = ft.EntitySet(id = 'rem_dur')

# adding a dataframe 
entity_set.entity_from_dataframe(entity_id = 'enh', dataframe = dataset, index = 'unique_id'
,,variable_types = {'Start_Date': ft.variable_types.DatetimeTimeIndex})) 

#unique_id is just row number from 1 to number of rows in dataset


entity_set.normalize_entity(base_entity_id='enh', new_entity_id= 'categorical_vars', index = 'ITEMID', 
                             additional_variables = ['cat_var_1', 'cat_var_2'])

###cutoff date 
cutoff_df = dataset[["unique_id", "trans_date"]]
cutoff_df["trans_date"] = pd.to_datetime(cutoff_df["trans_date"])

##feature engg
feature_matrix_2, feature_names_2 = ft.dfs(entityset=entity_set
                                       ,target_entity = 'enh'
                                       ,max_depth = 2
                                       ,verbose = 1 
                                       ,ignore_entities = ['categorical_vars']
                                       ,ignore_variables =ignore_features_dict
                                       ,dask_kwargs={'cluster': cluster}
                                       ,cutoff_time=cutoff_df
                                      ,cutoff_time_in_index=False
                                       )

It's unable to generate any time series features. It's returning just all the features except the ones which are ignored.
python time-series featuretools
1个回答
0
投票

创建实体时,需要使用time_index参数指定时间索引,而不是指定变量类型。

它看起来应该是这样的

entity_set.entity_from_dataframe(entity_id='enh',
                                 dataframe=dataset,
                                 index='unique_id',
                                 time_index="Start_Date") 
© www.soinside.com 2019 - 2024. All rights reserved.