Data Science Academy · レッスン

削除か補完か:賢く選ぶ

削除する場合と補完する場合

レッスン 2/413 ステップ

「削除か補完か:賢く選ぶ」はCoddyKit上の無料Data Science Academyレッスンです。 これはレッスン2/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはData Science Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Data Science Academyコースには全4レッスンが含まれています。

欠損に対する2つの道

欠損データに出会ったら、大きな選択を迫られます。影響を受けた行をdropするか、値を補うかです。どちらが適切かは、それぞれの方法でどれだけ失うかによって決まります。🛣️

行を削除する

dropna()メソッドは、欠損値が1つでもある行を削除します。すっきりして簡単ですが、大量のデータを気付かないうちに削除してしまう可能性があります。

clean = df.dropna()

代わりに列を削除する

ある列の大部分が空なら、axis=1を使って列全体を削除します。1つの問題のある列を残すほうが、その列が含まれる行を削除するより悪影響になる場合があります。

df.dropna(axis=1)

削除しても安全な場合

欠損がまれで、あちこちに散らばっている場合は、削除がうまく機能します。大きなデータセットのごく一部を失っても、結論が変わることはほとんどありません。

削除が問題になる場合

多くの行に1つでも欠損があると、削除によってデータが大幅に減る可能性があります。さらに、失われる行がrandomではない場合、結果に偏りが生じます。

欠損を補う

別の方法として、fillna()を使って欠損セルを適切な値でfillできます。すべての行を残せますが、一部の数値を作ることになります。

df.fillna(0)

補完は推測である

補った値はすべてestimateであることを覚えておきましょう。よい補完とは、妥当で記録に残されているものです。いい加減な補完は欠損を隠し、統計値を歪めます。

threshという中間策

threshを使うと、実際のデータが十分にある行だけを残せます。これは、行に含まれる欠損していない値の最小数を設定するものです。

df.dropna(thresh=3)

1つの列を対象にする

subsetを使うと、特定の重要な列が欠損している場合だけ行を削除できます。不要な削除から、ほかのデータを守れます。

df.dropna(subset=['price'])

なぜ欠損しているのかを考える

判断する前に、なぜ値が欠けているのかを考えましょう。randomに欠損しているデータは補完しても問題ありませんが、規則的な欠損自体が意味のあるシグナルである場合もあります。

簡単な目安

便利な目安は、欠損が少なければ削除し、行が貴重なら補完することです。どちらを選ぶ前にも、それぞれの方法でdistributionがどう変わるかを必ず検討してください。

クイックチェック

ある列の80%が空ですが、すべての行にはほかの列に有用なデータがあります。通常、最も賢明な対応は何でしょうか。

まとめ:意図を持って選ぶ

これで、どれだけデータを失うか、そしてなぜ値が欠損しているかに基づいて、dropとfillを比較できるようになりました。dropna、thresh、subsetを使って、慎重に削除しましょう。

無料で開始

AI チューターと学ぶ Python — 無料

ブラウザでリアルコードを書いて実行し、24/7 の AI チューターから瞬時にサポートを受け、ウェブまたはアプリで続きから学習できます。

コース
30
レッスン
120

よくある質問

「削除か補完か:賢く選ぶ」レッスンは無料ですか?

はい。「削除か補完か:賢く選ぶ」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Data Science Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Data Science Academyコースには全4レッスンが含まれています。

「削除か補完か:賢く選ぶ」で何を学びますか?

削除する場合と補完する場合 ブラウザで直接実行するハンズオンコードでData Science Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

Data Science Academyを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのData Science Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン2/4です。

「削除か補完か:賢く選ぶ」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このData Science Academyレッスンでコードを書いて実行できますか?

はい。すべてのData Science Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. テーブルに潜むNaNを見つける
  2. 削除か補完か:賢く選ぶ
  3. 平均、中央値、最頻値で補完する
  4. dtypeと重複行を修正する
← Data Science Academyに戻る