前提・実現したいこと
googlecolab word2vec を用いてSNSからとってきたテキストに対して
model.wv.similarityを実行しています。
not in vocabularyという辞書に近似した単語がないとエラーが出るのですが、そのエラーが出た単語に対して0を出力、もしくは無視したいと思っています。
発生している問題・エラーメッセージ
エラーメッセージ not in vocabulary
該当のソースコード
Python3
1import re 2import sys 3with open("実行結果を出力.txt","w",encoding="utf8") as rf: 4 f = open('SNSからとってきたテキストファイル.txt', 'r') 5 for line in f: 6 line = line.replace("\n","") 7 rf.write(line+"\t"+str(model.wv.similarity('喜び', line))+"\t"+str(model.wv.similarity('楽しい', line))+"\t"+str(model.wv.similarity('怒り', line))+"\t"+str(model.wv.similarity('悲しみ', line))+"\n") 8f.close()
↓うまくいった場合の実行結果です。
流れる 0.07782485 0.23322827 -0.012421711 0.044878237 おる 0.3339533 0.32054442 0.41223532 0.35460886 聞く 0.47465137 0.56470305 0.42761406 0.43778998 いい 0.4826496 0.57116914 0.36358583 0.3464372 曲 0.35325143 0.26332635 0.16820446 0.38184437
試したこと
if文でどうにかできそうではあるのですがうまくできていません。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/01/16 08:53
2021/01/16 09:07