[解決済み] AttributeError: 'list' オブジェクトには 'copy' という属性がありません。
質問
次のようなコード・スニペットがあります。
classifier = NaiveBayesClassifier.train(train_data)
#classifier.show_most_informative_features(n=20)
results = classifier.classify(test_data)
と表示され、次の行でエラーが表示されます。
results = classifier.classify(test_data)
のエラーが発生しました。
Traceback (most recent call last):
File "trial_trial.py", line 46, in <module>
results = classifier.classify(test_data)
File "c:\Users\Amr\Anaconda\lib\site-packages\nltk\classify\naivebayes.py", line 88, in classify
return self.prob_classify(featureset).max()
File "c:\Users\Amr\Anaconda\lib\site-packages\nltk\classify\naivebayes.py", line 94, in prob_classify
featureset = featureset.copy()
AttributeError: 'list' object has no attribute 'copy'
Pythonでベースクラスリストを拡張し、コピー機能を追加しようと考えています。 しかし、私はpythonの専門家ではないので、この問題を解決する方法を知りません。
どのように解決するのですか?
NLTKの分類器は
特徴量セット
これらは常に、特徴名と値を対応させた辞書として与えられます。その代わりにリストを渡しているので、NLTKのドキュメントにあるような素性を生成しているわけではありません。このコードでは単にPythonの辞書を想定しており、Pythonの辞書には
.copy()
メソッドを使用します。
を参照してください。 NLTKチュートリアルの章にある テキストの分類を学ぶ :
として知られる返されたディクショナリーは 機能セット は、機能名からその値へのマッピングを行う。特徴名は大文字と小文字を区別する文字列で、通常、次の例のように、人間が読みやすい短い説明を提供する。
'last_letter'
. フィーチャーの値は、ブーリアン、数値、文字列などの単純な型を持つ値である。
もご覧ください。 機能セット NLTK Classify API ドキュメントのセクションを参照してください。 :
<ブロッククオートトークンを記述する特徴は、特徴名と特徴値を対応させた辞書である「特徴セット」を用いて符号化される。素性名は、トークンのどの部分がその素性によって符号化されているかを示す一意の文字列である。
がどのようなオブジェクトなのかが共有されていませんね。
train_data
リストが含まれている場合、それらは
機能セット
ディクショナリを使用したい場合は
classify_many()
の代わりに
results = classifier.classify_many(test_data)
その方法 が行います。 はリストを取りますが、各要素は依然として有効な機能セットでなければなりません。
関連
-
Python Pillow Image.save jpg画像圧縮問題
-
[解決済み] リストのリストからフラットなリストを作るには?
-
[解決済み] リスト内のアイテムのインデックスを検索する
-
[解決済み] リストが空かどうかを確認するにはどうすればよいですか?
-
[解決済み] Pythonのリストメソッドであるappendとextendの違いは何ですか?
-
[解決済み] 割り当て後にリストが予期せず変更されました。その理由と防止策を教えてください。
-
[解決済み] リストを均等な大きさの塊に分割するには?
-
[解決済み] リストの最後の要素を取得する方法
-
[解決済み] リストの要素数を取得する方法
-
[解決済み] Pythonでオブジェクトが属性を持つかどうかを知る方法
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
ピロウズ画像色処理の具体的な活用方法
-
Python関数の高度な応用を解説
-
Python百行で韓服サークルの画像クロールを実現する
-
Pythonの学習とデータマイニングのために知っておくべきターミナルコマンドのトップ10
-
Python LeNetネットワークの説明とpytorchでの実装
-
Pythonの画像ファイル処理用ライブラリ「Pillow」(グラフィックの詳細)
-
[解決済み】OSError: [WinError 193] %1 は有効な Win32 アプリケーションではありません。
-
[解決済み】syntaxError: 'continue' がループ内で適切に使用されていない
-
[解決済み】SyntaxError: デフォルト以外の引数がデフォルトの引数に続く
-
[解決済み] 割り当て後にリストが予期せず変更されました。その理由と防止策を教えてください。