You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SKlearn TfidfVectorizer初始化传入X_train报参数数量错误如何解决?

报错根因

TfidfVectorizer的构造方法__init__仅接受self这一个默认位置参数,所有配置项均为关键字参数,不接受训练数据作为入参。你将X_train作为位置参数传入构造函数时,Python会自动传入类实例本身作为第一个位置参数self,叠加你手动传入的X_train,就会触发“收到2个位置参数”的报错,和你传入的列表内容、sklearn版本均无关。

正确使用步骤
  • 第一步:实例化TfidfVectorizer,仅传入配置类参数:
tfidf_vectorizer = TfidfVectorizer(ngram_range=(1,2), max_df=0.9, min_df=5, token_pattern=r'(\S+)' )
  • 第二步:调用fit_transform方法传入训练数据,生成TF-IDF特征矩阵:
X_train_tfidf = tfidf_vectorizer.fit_transform(X_train)

如果需要对测试集做特征转换,直接调用训练好的向量器的transform方法即可:

X_test_tfidf = tfidf_vectorizer.transform(X_test)

内容的提问来源于stack exchange,提问作者Ambrayers

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 22:27:02