###前提・実現したいこと
pythonのscikit-learnを使い,tfidfを求めようと考えています.
形態素解析を行って,単語だけを集めたテキストファイルを読み込み,
値が0.5以上の単語だけを表示しようとしています.
###発生している問題・エラーメッセージ
Traceback (most recent call last): File "tfidf6.py", line 15, in <module> if vecs > 0.5: File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/scipy/sparse/base.py", line 183, in __bool__ raise ValueError("The truth value of an array with more than one " ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all().
###該当のソースコード
# -*- coding: utf-8 -*- import numpy as np from sklearn.feature_extraction.text import TfidfVectorizer np.set_printoptions(precision=2) f = open('part-time_negaword.txt', 'r')#読み込むファイルを開く text = f.read()#ファイルから全データを読み込む f.close()#ファイルを閉じる docs = np.array([text]) vectorizer = TfidfVectorizer(use_idf=True,token_pattern=u'(?u)\\b\\w+\\b',min_df=1.0) vecs = vectorizer.fit_transform(docs) if vecs > 0.5: print vecs.toarray()
###試したこと
多次元配列が問題となっていると書いていたんですが,イマイチ理解できずエラーが直せません.
どうかご協力お願い致します.
###補足情報(言語/FW/ツール等のバージョンなど)
OS X
python2系
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/07/12 16:53
2017/07/13 07:48