統計学Ⅰ(B)2026 第4回

第4回 Python統計処理入門

計算は機械に、判断は人間に

統計学Ⅰ(B) 北星学園大学
小野原 彩香

統計学Ⅰ(B)2026 第4回

今日から、あなたがコードを書く

ここまで電卓・グラフ用紙でやってきた人、お疲れさま。

これからは1秒です

第2・3回の代表値・ばらつきを、今日は自分のコードで。
やるのは空欄 ____ を埋めるだけ。

統計学Ⅰ(B)2026 第4回

エラーは失敗ではない

エラーメッセージ=「ここが違うよ」というお知らせ

  • KeyError: '列名' → 列名のスペル違い
  • SyntaxError → カッコ・全角/半角・インデント
  • 文字化け □□ → japanize のセルを実行したか

落ち着いて読めば、原因はたいてい書いてある。

統計学Ⅰ(B)2026 第4回

データは「表」= DataFrame

df = pd.read_csv(URL)   # 表を読み込む
df.shape                # (種数, 列数)
df.head()               # 先頭5行

行 = 1つの種
列 = 体重・妊娠期間などの項目

統計学Ⅰ(B)2026 第4回

代表値をコードで(第2回の再現)

df["体重g"].mean()      # 平均  → 5880.9
df["体重g"].median()    # 中央値 → 3006.0
df["一腹産子数"].mode() # 最頻値 → 1.01

電卓で出した値と同じ。違いは速さと正確さだけ。

統計学Ⅰ(B)2026 第4回

ばらつき・要約・集計

df["妊娠期間日"].std()                  # SD → 37.8
df["体重g"].describe()                  # 一気に要約
df.groupby("科")["体重g"].mean()        # 科別平均
df.isna().sum()                         # 欠損の確認
plt.hist(df["体重g"].dropna())          # グラフ1行

手計算なら数十分 → 一瞬

統計学Ⅰ(B)2026 第4回

まとめ

やりたいこと コード
列を取り出す df["列名"]
平均/中央値/最頻値 .mean() .median() .mode()
標準偏差/分散 .std() .var()
要約 .describe()
グループ集計 df.groupby("列")["列"].mean()
欠損 df.isna().sum()
統計学Ⅰ(B)2026 第4回

まとめ

計算は機械に任せ

人間は「どの数字を信じるか」に集中する

次回:相関と因果 ―― 「相関」と「因果」の決定的な違い