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

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

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

Kaggleは、機械学習モデルを構築するコンペティションのプラットフォームおよびその運営企業を指します。企業や政府といった組織とデータサイエンティスト・機械学習エンジニアを繋げるプラットフォームであり、単純なマッチングではなくコンペティションが特徴です。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

1回答

1032閲覧

kaggleで何故かエラーが出でしまう。

退会済みユーザー

退会済みユーザー

総合スコア0

Kaggle

Kaggleは、機械学習モデルを構築するコンペティションのプラットフォームおよびその運営企業を指します。企業や政府といった組織とデータサイエンティスト・機械学習エンジニアを繋げるプラットフォームであり、単純なマッチングではなくコンペティションが特徴です。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2022/02/15 01:26

train['Embarked'] = train['Embarked'].fillna(train['Embarked'].mode()[0])
test['Embarked'] = test['Embarked'].fillna(train['Embarked'].mode()[0])

というようなコードを入力すると、エラーが出てしまいます。

train = train.drop(['Name', 'Ticket', 'Cabin'], axis=1, inplace=True)
test = test.drop(['Name', 'Ticket', 'Cabin'], axis=1, inplace=True)

でも同じようなエラーが発生しました。

ご回答のほどよろしくお願い致します。


TypeError Traceback (most recent call last)
/tmp/ipykernel_33/2443340348.py in <module>
----> 1 train['Embarked'] = train['Embarked'].fillna(train['Embarked'].mode()[0])
2 test['Embarked'] = test['Embarked'].fillna(train['Embarked'].mode()[0])

TypeError: 'NoneType' object is not subscriptable

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

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

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

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

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

退会済みユーザー

退会済みユーザー

2022/02/15 02:55

kaggleに投げたらエラーになる、という意味でしょうか。 データの読み方が間違っている話であれば、kaggleは関係ないですね。 データが確認できないとあってるのかどうかよくわからないです。
melian

2022/02/15 03:06

エラーメッセージを読む限り、train == None なのでしょうね。
guest

回答1

0

ベストアンサー

エラーの原因は、問題が起きる行よりも前にあります。

どこかで、

python

1train = train.drop(['Name', 'Ticket', 'Cabin'], axis=1, inplace=True)

のように、inplace=Trueを指定したメソッドの結果をもとの変数に代入しているところがあるはずです。
Pythonでは、一般にミュータブルなオブジェクトを変更するメソッドはNoneを返しますので、その変数(trainやtest)にNoneが代入されてしまっているのです。

ソース中にinplace=Trueを指定したメソッドを使っているところは全て

python

1train.drop(['Name', 'Ticket', 'Cabin'], axis=1, inplace=True)

のように変更してください。

投稿2022/02/15 03:06

ppaul

総合スコア24666

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問