首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用Featuretools包定义带有参数的自定义基元?

如何使用Featuretools包定义带有参数的自定义基元?
EN

Stack Overflow用户
提问于 2019-07-03 16:59:31
回答 1查看 105关注 0票数 0

我正在尝试使用Featuretools包创建自定义转换,在该包中,我可以输入参数并更改函数的行为

例如,对于下面的自定义日志转换类,我希望添加一个base参数,这样我就可以对具有不同基础的特性进行log转换:

代码语言:javascript
复制
class Log(TransformPrimitive):
    """Computes the logarithm for a numeric column."""

    name = 'log'
    input_types = [Numeric]
    return_type = Numeric

    def get_function(self):
        return np.log

我该如何实现这样的原语,而且如何使用featuretools.dfs()函数来实现它呢?

EN

回答 1

Stack Overflow用户

发布于 2019-07-09 23:30:49

考虑类中的__init__函数。

例如,

代码语言:javascript
复制
class Log(TransformPrimitive):
    """Computes the logarithm for a numeric column."""

    name = 'log'
    input_types = [Numeric]
    return_type = Numeric

    def __init__(self, n=3):
        self.n = n

    def get_function(self):
        return np.log 
        # adjust for variable base, probably using something like 
        # np.log(array) / np.log(self.n)

我们称之为:log_base_n = Log(n=2)

在DFS中,您可以将相应的类实例添加到原语列表中。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56866470

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档