質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Q&A

解決済

1回答

584閲覧

"nan"、"null"を欠損値ではなく文字列と認識させたい!!!

退会済みユーザー

退会済みユーザー

総合スコア0

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

0グッド

0クリップ

投稿2022/07/27 13:46

自然言語分析を行っています。
モデル生成時の語彙データに「nan」や「null」があります。
その語彙データでテスト用のテキストの汎化性能を測定する際に、その上記2つの語彙データが欠損値と認識されるためエラーが出ます。

(コード)
vectorizer = TfidfVectorizer(vocabulary = vocab_list)  ← 「vocab_list」が語彙リスト。いったんcsv化した後、pandasで読み込んでリスト形式にしている。
vectorizer.fit(data_separate)

エラーメッセージ
----> 3 vectorizer.fit(data_separate)
4 print('No. of feature_words: ', len(vectorizer.get_feature_names()))

~\Anaconda3\lib\site-packages\sklearn\feature_extraction\text.py in fit(self, raw_documents, y)
1821 self._check_params()
1822 self._warn_for_unused_params()
-> 1823 X = super().fit_transform(raw_documents)
1824 self._tfidf.fit(X)
1825 return self

~\Anaconda3\lib\site-packages\sklearn\feature_extraction\text.py in fit_transform(self, raw_documents, y)
1195
1196 self._validate_params()
-> 1197 self._validate_vocabulary()
1198 max_df = self.max_df
1199 min_df = self.min_df

~\Anaconda3\lib\site-packages\sklearn\feature_extraction\text.py in _validate_vocabulary(self)
447 if vocab.setdefault(t, i) != i:
448 msg = "Duplicate term in vocabulary: %r" % t
--> 449 raise ValueError(msg)
450 vocabulary = vocab
451 else:

ValueError: Duplicate term in vocabulary: nan

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

お忙しいところご回答いただきありがとうございました。
ご提案の手法を試しましたが、うまくいかないようです。
この質問は取り下げることとします。

投稿2022/07/29 04:55

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問