TypeError:fit_transform()缺少1个必需的位置参数:“ raw_documents”

Muf*_*ida 4 python machine-learning feature-extraction scikit-learn tfidfvectorizer

我正在尝试使用Sklearn提取特征提取文本,但是出现错误

类型错误:fit_transform()缺少1个必需的位置参数:“ raw_documents”

似乎我必须在缺少原始文档的情况下完成一些参数,但是我找不到导致错误的原因,这是我的代码:

features=TfidfVectorizer.fit_transform(data.status).toarray()
label=data.label
features.shape
Run Code Online (Sandbox Code Playgroud)

在Jupyter笔记本电脑控制台中运行时,出现以下错误:

    TypeError   Traceback (most recent call last)\
<ipython-input-3-614f2fa78a04> in <module>()
----> 1 features=TfidfVectorizer.fit_transform(data.status).toarray()
      2 label=data.label
      3 features.shape

TypeError: fit_transform() missing 1 required positional argument: 'raw_documents'
Run Code Online (Sandbox Code Playgroud)

fug*_*ede 5

在scikit-learn中,所有带有a fit_transform的实例都是某种类型的实例,这意味着您需要首先初始化该实例,在此实例中调用fit_transform它就像是一个staticmethod

因此,可以通过let vectorizer = TfidfVectorizer()和use 创建实例vectorizer.fit_transform(data.status),也可以TfidfVectorizer().fit_transform(data.status)直接使用。

您可以通过查看文档来了解这一点,注意到您似乎确实在传递唯一的必需参数,并回想起Python中的实例方法带有一个隐式参数(通常称为)self,因此代码中发生的是你传递data.statusself,同时raw_documents未设置。