TypeError:fit()接受1个位置参数,但给出了3个

2024-05-16 03:00:09 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图编写一个只包含一个分类器的管道,但失败得很惨

我通过运行以下命令获得标题中的错误:

myclass = MyClass(path1, path2)
skl_pipeline = Pipeline(steps=[('myclass', myclass)])
skl_pipeline.fit(None)

我给出的论点并不重要,所以我只写了一个例子

这是我的班级定义:

class MyClass (BaseEstimator, ClassifierMixin):

以及我的“适合”功能:

def fit( self, X = None, y = None ):
    return self

这简直是再简单不过了

我做错了什么

编辑:完整示例:

class MyClass (BaseEstimator, ClassifierMixin):

    def __init__(self, FilePath1, FilePath2):
        self.fp1 = FilePath1
        self.fp2 = FilePath2

    #Return self nothing else to do here    
    def fit( self, X = None, y = None ):
        return self 

    def transform( self, X, y = None ):
        return X

Tags: selfnonereturnpipeline分类器defmyclassclass