最頻値
CoddyのMachine Learningジャーニー「機械学習のための統計」セクションの一部。レッスン 5/64。
Tシャツのサイズはラベルです。MとXLの平均値はありません。カテゴリ列の中心となる値は最頻値、つまり最もよく現れる値です:
.mode()で最頻値を求めます:
sizes = pd.Series(["M", "L", "M", "S", "XL", "M", "L", "S"])
print(sizes.mode()[0])これは次のように表示されます:
M値が同率になることがあるため、.mode()は、同率の値をすべて並べ替えてSeriesとして返します。[0]は最初の値を取得します。
最頻値は、カテゴリ列の欠損値を補います。また、すべてのモデルの中で最も単純なモデルです。常に最も一般的なクラスを予測します。
チャレンジ
簡単スキーショップでは、何を在庫として置いておくべきか知りたいと考えています。rentals.csvには、列item、boot_size、level、daysを持つ30件のレンタル記録があります。
- 各列について、順番に、列名、最頻値、その値に該当するレンタル件数を出力してください。
- 次に、
daysの平均値を小数第1位に丸めて、最頻値と比較してください。
レンタル記録が8件の場合は次のようになります。
item: snowboard (5 of 8)
boot_size: 42 (4 of 8)
level: beginner (5 of 8)
days: 1 (4 of 8)
Days rented, mean vs mode: 2.8 vs 12.8日間のレンタルはありません。最頻値は実際にある値です。
自分で試してみよう
import pandas as pd
rentals = pd.read_csv("rentals.csv")
# 以下にコードを書いてください
このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。
機械学習のための統計のすべてのレッスン
自分で練習してみよう: Pythonオンラインコンパイラ