テキストを対応する整数にベクトル化し、それらのテキストをマップされた整数に変換し、新しい入力整数[2,9,39,46,56,12,89,9]
を使用して新しい文を作成したいとします。sklearnのCountVectorizerを使用してベクトル化およびデベクトル化する方法は?
私はこの目的で使用できるカスタム関数をいくつか見てきましたが、sklearn自体にこのような関数があるかどうかを知りたいと思っています。
from sklearn.feature_extraction.text import CountVectorizer
a=["""Lorem ipsum dolor sit amet, consectetur adipiscing elit.
Morbi imperdiet mauris posuere, condimentum odio et, volutpat orci.
Curabitur sodales vulputate eros eu gravida. Sed pharetra imperdiet nunc et tempor.
Nullam lectus est, rhoncus vitae lacus at, fermentum aliquam metus.
Phasellus a sollicitudin tortor, non tempor nulla.
Etiam mattis felis enim, a malesuada ligula dignissim at.
Integer congue dolor ut magna blandit, lobortis consequat ante aliquam.
Nulla imperdiet libero eget lorem sagittis, eget iaculis orci dignissim.
Phasellus sit amet sodales odio. Pellentesque commodo tempor risus, et tincidunt neque.
Praesent et sem velit. Maecenas id risus sit amet ex convallis ultrices vel sed purus.
Sed fringilla, leo quis congue sollicitudin, mauris nunc vehicula mi, et laoreet ligula
urna et nulla. Nam sollicitudin urna sed dolor vehicula euismod. Mauris bibendum pulvinar
ornare. In suscipit sed mi ut posuere.
Proin egestas, nibh ut egestas mattis, ipsum nulla bibendum enim, ac suscipit nisl justo
id metus. Nam est dui, elementum eget suscipit nec, aliquam in mi. Integer tortor erat,
aliquet at sapien et, fringilla posuere leo. Praesent non congue est. Vivamus tincidunt
tellus eu placerat tincidunt. Phasellus convallis lacus vitae ex congue efficitur.
Sed ut bibendum massa, vitae molestie ligula. Phasellus purus felis, fermentum vitae
hendrerit vel, vulputate quis metus."""]
vec = CountVectorizer()
dtm=vec.fit_transform(a)
print vec.vocabulary_
#convert text to corresponding vectors
mapped_a=
#new sentence using below mapped values
#input [2,9,39,46,56,12,89,9]
#creating sentence using specific sequence
new_sentence=
コードありがとうございますが、コードに少し問題があります。 'mapped_a'では疎な行列は必要ありませんが、代わりにすべての単語をマップされた整数で置き換えたいと思います。同様に、 'a'というテキストのすべての単語をそれらの整数に置き換えたいと思う' dolor'という単語が '17'にマップされていると考えてみましょう。次に、その文章はこれらの入力を考慮する 'input1 = [2,54,9]' 'input1 = [9,54,2]'私はコードが印刷された文章の順序を維持すると期待していたが、 [u'aliquam '、u'commodo'、u'magna ']、dtype ='
Eka
質問の最初の部分をすべての単語のIDを出力するように更新しました。 2番目の部分は、idsから単語まで、注文を処理して維持する必要があります(forループでカスタムソリューションとしてコメントされた部分)。 –