我正在尝试使用 Sklearn 进行特征提取文本,但是出现错误
Type error:fit_transform() missing 1 required positional argument: 'raw_documents'
看来我必须在缺少原始文档的情况下完成一些参数,但我找不到导致错误的原因,这是我的代码:
features=TfidfVectorizer.fit_transform(data.status).toarray()
label=data.label
features.shape
在 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'
最佳答案
在 scikit-learn 中,带有 fit_transform
的所有内容都是某种类型的实例,也就是说,您需要首先初始化该实例,在该实例中调用 fit_transform
就好像它是一个静态方法
。
因此,可以通过让 vectorizer = TfidfVectorizer()
创建实例并使用 vectorizer.fit_transform(data.status)
,或者仅使用 TfidfVectorizer()直接.fit_transform(data.status)
。
您可以通过查看 the docs 来了解这一点,注意到您似乎确实传递了唯一必需的参数,并回想一下 Python 中的实例方法带有一个隐式参数,通常称为 self
,因此您的代码中发生的情况是将 data.status
作为 self
传递,而 raw_documents
未设置。
关于python - 类型错误 : fit_transform() missing 1 required positional argument: 'raw_documents' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54501667/