問題タブ [textblob]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
7075 参照

python-2.7 - Python 2.7 と Textblob - TypeError: `__init__(text)` に渡される `text` 引数は文字列でなければなりません。

更新: 問題は解決しました。(以下のコメント セクションを参照してください。) 最終的に、.csv を Unicode に変換して TextBlob を利用するには、row = [cell.decode('utf-8') for cell in row], and text = ' ' の 2 行が必要でした。 .join(行)。

元の質問: Textblob という Python ライブラリを使用して、.csv ファイルのテキストを分析しようとしています。コードで Textblob を呼び出したときに受け取るエラーは次のとおりです。

トレースバック (最後の最後の呼び出し): File "C:\Users\Marcus\Documents\Blog\Python\Scripts\Brooks\textblob_sentiment.py", line 30, in blob = TextBlob(row) File "C:\Python27\lib \site-packages\textblob\blob.py", line 344, in init '{0} ではなく文字列である必要があります'.format(type(text)))TypeError:text渡される引数は__init__(text)文字列である必要があります。

私のコードは次のとおりです。

私はUTF / unicodeの問題に取り組んできました。私はもともと別のテーマを持っていましたが、それをこのスレッドに投稿しました。(コードとエラーが変更されたため、新しいスレッドに投稿しています。) print ステートメントは、変数「行」が type=str であることを示しています。これは、リーダー オブジェクトが Textblob の要求どおりに変換されたことを示していると思いました。 . ソース .csv ファイルは UTF-8 として保存されます。これでブロックを解除する方法と、コードの欠陥についてフィードバックを提供できますか?
助けてくれてありがとう。

0 投票する
1 に答える
2227 参照

python - Python 3: 特定のキーワードを含むニュース記事を取得するにはどうすればよいですか?

キーワードを含むニュース記事の感情を返す小さな Web アプリを作成しようとしています。

TextBlob と Newspaper3K python 3 パッケージを使用しました。Newspaper3K の URL 文字列を Google ニュースの検索クエリの結果にしようとしましたが、新聞パッケージは Google ニュースの「メイン ページ」にリダイレクトされるようです。

特定のキーワードを含む新聞記事のリストを取得する方法はありますか? さらに、新聞がページを繰り返すことは可能ですか?

以下は私のコードです:

0 投票する
1 に答える
3190 参照

python - TextBlob をインポートしようとすると、「ImportError: cannot import name compat」というメッセージが表示されます。これは何を意味するのでしょうか?どうすれば修正できますか?

私が言えることから、「compat」は NLTK の一部のコンポーネントであり、TextBlob はその上に構築されています。奇妙なことに、私は過去に TextBlob をインポートしたことがあるので、これは最近のものに違いありません。TextBlob と NLTK の両方を最新バージョンに更新したので、それが問題ではありません。

このような同様の質問は、基本的に「すべての NLTK をインポートしない」ことを推奨しているため、基本的に未解決のままです。

編集:私のコードは次のとおりです

from textblob import TextBlob

0 投票する
1 に答える
2579 参照

python - TextBlob が否定を使用/検出しないのはなぜですか?

私は TextBlob を使用して感情分析タスクを実行しています。TextBlob が否定を検出できる場合とそうでない場合があることに気付きました。

ここに2つの簡単な例があります

形容詞を使用する場合の 2 番目の例でわかるようにbest、極性は変化しません。形容詞bestが非常に強力な指標であるという事実に関係していると思いますが、否定は極性を逆にする必要があるため(私の理解では)、正しくないようです。

誰かが何が起こっているのか少し説明できますか? textblob は何らかの否定メカニズムを使用していますか、それとも単語notが文に否定的な感情を追加しているだけですか? どちらの場合でも、2 番目の例が両方のケースでまったく同じ感情を持っているのはなぜですか? そのような障害を克服する方法について何か提案はありますか?

0 投票する
1 に答える
257 参照

python - textblob 単純ベイズ分類器でトピック分類時間を短縮する方法

ベイズ定理で分類されたモデルを保存するために pickle を使用しています。5600 レコードで分類した後、2.1 GB のファイルを保存しました。しかし、そのファイルをロードするときは2分近くかかりますが、一部のテキストを分類するには5.5分かかります. 次のコードを使用してロードして分類しています。

pickle オブジェクトをロードするための最初の行とテキストを分類するための 2 行目は、それがどのトピック (カテゴリ) であるかを示します。モデルを保存するために次のコードを使用しています。

textblob.Environment から使用しているものはすべて、Windows、28GB RAM、4 コア CPU です。誰かがこの問題を解決できれば、非常に役立ちます。

0 投票する
1 に答える
6472 参照

python - 長さの異なる tf-idf ドキュメント

ドキュメントの長さが非常に異なる場合のtfグレードの正規化についてWebを検索しました(たとえば、ドキュメントの長さが500ワードから2500ワードまでさまざまです)

私が見つけた唯一の正規化は、用語の頻度をドキュメントの長さで分割することについて話しているため、ドキュメントの長さに意味がありません。

ただし、この方法は tf の正規化には非常に適していません。存在する場合、各ドキュメントの tf グレードに非常に大きな偏りが生じます (すべてのドキュメントがほぼ同じ辞書から構築されている場合を除きます。これは、tf-idf を使用する場合には当てはまりません)。

たとえば、2 つのドキュメントを考えてみましょう。1 つは 100 個の一意の単語で構成され、もう 1 つは 1000 個の一意の単語で構成されています。doc1 の各単語の tf は 0.01 ですが、doc2 の各単語の tf は 0.001 です。

これにより、単語を doc2 よりも doc1 に一致させると、tf-idf グレードが自動的に大きくなります。

より適切な正規化式の提案はありますか?

ありがとうございました

編集 私はまた、各ドキュメントのドキュメントの最大用語頻度で用語頻度を分割する必要があることを示す方法を見ましたが、これも私の問題を解決していません

私が考えていたのは、すべてのドキュメントから最大用語頻度を計算し、各用語頻度を最大で割ってすべての用語を正規化することです

あなたの考えを知りたいです

0 投票する
1 に答える
614 参照

python - nltk UnicodeDecodeError - ntpath.py ファイルに接続

Python バージョン: 2.7

Windows のバージョン: Windows 7 64 ビット

システムの言語: ロシア語

インターネットでまだ解決されていない問題があります。

これが私のコードです:

nltkメソッドに関連する次のエラーが表示されます。

Google と Stackoverflow からの回答から理解した限りでは、この問題は の言語の問題に関連していますntpath.py

次の問題を試しましたが、うまくいきませんでした。

  1. 修正方法の使用sys.setdefaultencoding('utf8') :「UnicodeDecodeError: 'ascii' コーデックはバイトをデコードできません」

  2. それを使用sys.setdefaultencoding('Cp1252')すると、エラーが解消されました。ただし、私のプログラムの出力も消えました。

  3. を使用しimport ioます。Python (nltk) - UnicodeDecodeError: 'ascii' コーデックはバイトをデコードできません

  4. inを使用unicode().decode()ntpath.pyます (このソリューションを見つけたリンクを覚えていません)。

UPD:解決策を見つけました。

この部分をに挿入しようとしましたntpath.py

したがって、このファイルのコードの一部は次のとおりです。

それは完全に機能します。システム設定に別の言語がある場合は、それらで「遊んで」置き換えてCp1252ください。

0 投票する
1 に答える
985 参照

python - textblob 証明書のダウンロード中にエラーが発生し、検証に失敗しました

Macbook Air 10.5 Yosemite で Python 2.7 を実行しています。textblob のインストールでこの問題が発生しています。何をすべきか?