Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
学ぶ カテゴリ変数の管理 | データ前処理
Pandasによるデータ整形
セクション 5.  6
single

single

bookカテゴリ変数の管理

メニューを表示するにはスワイプしてください

これから、欠損値を含まないデータセットを扱います。NaN列の'Age'値は、その列の平均値で置き換えられ、NaN列の'Fare'値は削除されました。 次に、カテゴリ変数の管理方法について学びます。カテゴリ変数とは、いくつかのカテゴリーを持つ変数のことです。例えば、'Sex'列には'male''female'があり、'Embarked'列には'Q''S''C'があります。

各カテゴリの値の数を計算したり、それらの情報を調べたりするにはどうすればよいでしょうか?

すでに.loc[].isin().between()など多くの関数を知っていますが、pandasにはこれをより簡単かつ便利に行う方法があります。それが.get_dummies()関数です。例として、'Embarked'列に適用してみます。実装とその結果を見てみましょう(ランダムに選ばれた5人の乗客の名前と新しく作成された列を出力します)。

1234
import pandas as pd data = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/4bf24830-59ba-4418-969b-aaf8117d522e/titanic3.csv', index_col = 0) data = pd.get_dummies(data, columns = ['Embarked']) print(data[['Name', 'Embarked_C', 'Embarked_Q', 'Embarked_S']].sample(5))
copy

出力例のひとつ、つまりランダムに選ばれた5行の組み合わせのひとつを確認しましょう。表は横にスクロールしてすべての列を確認できます。

説明:

この結果、関数は列 'Embarked''Embarked_C''Embarked_Q''Embarked_S' の3つの列に分割します。合計で3つのカテゴリがあります。各乗客は 'Embarked' 列に自分のカテゴリを持っています。そのため、関数は各カテゴリに対応する3つの列を作成し、各乗客に対して、該当する地理に関連していればその列に 1 を、そうでなければ 0 を入力します。したがって、1 は1つの列のみに入ります。

pd.get_dummies(data, columns = ['Embarked'])
  • pd.get_dummies() - この関数はカテゴリ変数ダミー変数(1または0)に変換します。
  • data - 使用したいデータフレーム。
  • columns = ['Embarked'] - ダミー変数に変換したいカテゴリ変数を持つ列。列名はリストに入れる必要がありますので注意してください。
タスク

スワイプしてコーディングを開始

ここでの課題は、'Sex' 列をカテゴリ変数からダミー変数に変換することです。その後、各カテゴリの値の合計を出力してください。

解答

Switch to desktop実践的な練習のためにデスクトップに切り替える下記のオプションのいずれかを利用して、現在の場所から続行する
すべて明確でしたか?

どのように改善できますか?

フィードバックありがとうございます!

セクション 5.  6
single

single

AIに質問する

expand

AIに質問する

ChatGPT

何でも質問するか、提案された質問の1つを試してチャットを始めてください

some-alt