已解决FutureWarning: Function get_feature_names is deprecated; get_feature_names is deprecated in 1.0 a

已解决(sklearn报错)FutureWarning: Function get_feature_names is deprecated; get_feature_names is deprecated in 1.0 and will be removed in 1.2. Please use get_feature_names_out instead. warnings.warn(msg, category=FutureWarning)






文章目录

  • 报错代码
  • 报错翻译
  • 报错原因
  • 解决方法
  • 帮忙解决






报错代码



粉丝群里面的一个小伙伴想用sklearn提取关键字,于是在网上复制别人的代码,但是发生了报错(当时他心里瞬间凉了一大截,跑来找我求助,然后顺利帮助他解决了,顺便记录一下希望可以帮助到更多遇到这个bug不会解决的小伙伴),报错代码如下:

from sklearn.feature_extraction.text import TfidfVectorizer
corpus = [
    'This is the first document.',
     'This document is the second document.',
     'And this is the third one.',
     'Is this the first document?',
 ]
vectorizer = TfidfVectorizer()
X = vectorizer.fit_transform(corpus)
print(vectorizer.get_feature_names())
print(X.shape)

粉丝安装了sklearn模块,可以看导包没有任何问题,但是发生了报错:


已解决FutureWarning: Function get_feature_names is deprecated; get_feature_names is deprecated in 1.0 a_第1张图片

报错信息截图如下


在这里插入图片描述




报错翻译



报错信息翻译

未来警告 :函数get_feature_names已弃用;get_feature_names在1.0中不推荐使用,将在1.2中删除。请改用get_feeture_names_out。警告。警告(msg,category=FutureWarning)





报错原因



报错原因:sklearn后续版本迭代的原因,get_feature_names函数会被弃用。小伙伴们修改为下面的代码即可!!!

解决方法



把get_feature_names函数修改为如下代码:

print(vectorizer.get_feature_names_out())

再次运行代码成功了,也没有警告了:


已解决FutureWarning: Function get_feature_names is deprecated; get_feature_names is deprecated in 1.0 a_第2张图片

帮忙解决

本文已收录于:《告别Bug》专栏

本专栏用于记录学习和工作中遇到的各种疑难Bug问题,以及粉丝群里小伙伴提出的各种问题,文章形式:报错代码 + 报错翻译 + 报错原因 + 解决方法,包括程序安装、运行程序过程中等等问题,订阅专栏+关注博主后如遇到其他问题可私聊帮忙解决!!!

你可能感兴趣的:(《告别Bug》,sklearn,python,人工智能,机器学习)