【发布时间】:2019-10-10 14:39:42
【问题描述】:
我是 python 新手,需要你的帮助。
我正在使用 NLP,我想对一个字符串字段进行分类。
我阅读了数据集
data = pd.read_csv("dataset.csv",sep=';',encoding='latin-1',error_bad_lines=False)
标记字段
data['campo']= data['campo'].str.split()
输出是:
1- [Su, inexperto, personal] 2- [Atención, al, cliente]
当我查看互联网上存在的教程时,对于大多数人来说,tokeniza 返回带有撇号的分隔词。
问题是当我想矢量化 (TfidfVectorizer) 时,我收到一个错误,我认为我的问题就在这里。
你能帮帮我吗?为什么我没有带撇号的标记?
执行此操作后,我添加了对字段进行矢量化的可能性:
Tfidf_vect = TfidfVectorizer (max_features = 5000)
Tfidf_vect.fit(data ['field'])
从这里,我抛出错误:
AttributeError: 'list' 对象没有属性 'lower'
我以为我是来找低级的,所以我补充说:
Tfidf_vect = TfidfVectorizer (lowercase = False, max_features = 5000)
Tfidf_vect.fit (data ['field'])
然后他从那里向我开枪:
TypeError:预期的字符串或类似字节的对象
你知道这是什么问题吗?
【问题讨论】:
标签: python-3.x scikit-learn tfidfvectorizer