赞
踩
在我看来,以下两种方法都是将文本数据转换为数值型数据。
CountVectorizer的数组格式可以理解为数组每一行记录每一个文本数据中单词的个数
TfidfVectorizer的数组格式可以理解为数组每一行记录每一个文本数据中单词的重要性
作用主要为:对文本数据进行特征值化
作用:对文本数据进行特征值化 类:sklearn.feature_extraction.text.CountVectorizer CountVectorizer语法 CountVectorizer(max_df=1.0,min_df=1,…) # 返回词频矩阵 # 方法 CountVectorizer.fit_transform(X,y) # X:文本或者包含文本字符串的可迭代对象 # 返回值:返回sparse矩阵 CountVectorizer.inverse_transform(X) # X:array数组或者sparse矩阵 # 返回值:转换之前数据格式 CountVectorizer.get_feature_names() # 返回值:单词列表
>>> from sklearn.feature_extraction.text import CountVectorizer >>> corpus = [ ... 'This is the first document.', ... 'This document is the second document.', ... 'And this is the third one.', ... 'Is this the first document?', ... ] >>> vectorizer = CountVectorizer() >>> X = vectorizer.fit_transform(corpus) >>> print(vectorizer.get_feature_names()) ['and', 'document', 'first', 'is', 'one', 'second', 'the', 'third', 'this'] >>> print(X.toarray()) [[0 1 1 1 0 0 1 0 1] [0 2 0 1 0 1 1 0 1] [1 0 0 1 1 0 1 1 1] [0 1 1 1 0 0 1 0 1]] # ngram_range=(2, 2) # (1,1)的ngram_range表示仅字母组合,(1,2)表示单字母组合和双字母组,而(2,2)则仅表示双字母组。 >>> vectorizer2 = CountVectorizer(analyzer='word', ngram_range=(2, 2))
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。