新功能的类型是什么?

时间:2018-06-26 06:55:07

标签: featuretools

为什么使用转换原语(例如WEEKDAY,DayOfMonth,YEAR,MonthOfYear)类型的要素创建的新要素创建为整数,即连续要素?它们不应该是分类特征吗?我的意思是在创建这些功能时,这些列的dtype是否不应该是“对象”而不是“ int”?

1 个答案:

答案 0 :(得分:1)

最好将类别或序数特征存储为整数值。这是因为将数据表示为整数比将字符串表示为更有效。例如,[1、4、3、1]所需的内存比[“ January”,“ April”,“ March”,“ January”]少得多。您可以使用ft.dfs

返回的功能定义列表来确定功能的数据类型。
import featuretools as ft
es = ft.demo.load_mock_customer(return_entityset=True)
feature_matrix, feature_defs = ft.dfs(entityset=es,
                                      target_entity="customers",
                                      agg_primitives=[],
                                      trans_primitives=["month"])

feature_defs是功能定义列表

[<Feature: zip_code>, <Feature: MONTH(join_date)>]

我们可以获得这样的变量类型

feature_defs[1].variable_type

这将返回

featuretools.variable_types.variable.Ordinal

要将documentation编码为ft.encode_features,以将离散特征编码为数字特征以进行机器学习。