У меня проблемы с созданием пользовательского преобразования, которое применяется к pandas фрейму данных
class attributeAdder(BaseEstimator,TransformerMixin):
def __init__(self, add_target = True):
self.add_target = add_target
def fit(self, X, y=None):
return self
def transform(self, X) :
if self.add_target:
X["failed"]=X["failures"].apply(lambda x: 0 if x==0 else 1)
X.drop(columns=["failures"],inplace=True)
return X
att_adder=attributeAdder()
df=attributeAdder.transform(df)
df.head()
, и я получаю эту ошибку
TypeError Traceback (most recent call last)
<ipython-input-117-cc8d4ad8702f> in <module>
14
15 att_adder=attributeAdder()
---> 16 df=attributeAdder.transform(df)
17 df.head()
18
TypeError: transform() missing 1 required positional argument: 'X'
Кто-нибудь знает, в чем проблема этот код? Спасибо