0

私はvocabulary_.getを使用して疑問を呈しています。コードは次のとおりです。 以下に見られるように、特定の単語の出現回数を得るために、機械学習練習の1つでCountVectorizerを使用しました。sklearn CountVectorizer

from sklearn.feature_extraction.text import CountVectorizer 
vectorizer = CountVectorizer() 
s1 = 'KJ YOU WILL BE FINE' 
s2 = 'ABHI IS MY BESTIE' 
s3 = 'sam is my bestie' 
frnd_list = [s1,s2,s3] 
bag_of_words = vectorizer.fit(frnd_list) 
bag_of_words = vectorizer.transform(frnd_list) 
print(bag_of_words) 
# To get the feature word number from word 
#for eg: 
print(vectorizer.vocabulary_.get('bestie')) 
print(vectorizer.vocabulary_.get('BESTIE')) 

OUTPUT:

Bag_of_words is : 
(0, 1) 1 
(0, 3) 1 
(0, 5) 1 
(0, 8) 1 
(0, 9) 1 
(1, 0) 1 
(1, 2) 1 
(1, 4) 1 
(1, 6) 1 
(2, 2) 1 
(2, 4) 1 
(2, 6) 1 
(2, 7) 1 

'bestie' has feature number: 
2 
'BESTIE' has feature number: 
None 

したがって、私の疑問は、なぜ 'bistieが' 正しい機能番号すなわち2を示し、 'BESTIEは' Noneを示さないということです。 vocabulary_.getは資本ベクトルとうまく機能しませんか?ドキュメントhereに述べたように

答えて

1

CountVectorizerは、Trueにそのデフォルトパラメータlowercaseを取りますFalseにあなたが異なっ小文字と大文字扱いたい場合は、その

lowercase : boolean, True by default 
    Convert all characters to lowercase before tokenizing. 

変更を。

関連する問題