7.Pythonでデータ分析を始めよう!初心者向けガイド-value_counts編-

PR表記

※アフィリエイト広告を利用しています

どうもニコイチです。前回の記事で、特徴量とはなにかに触れました。今回は、実際にPythonを使ってデータを解析する際に、describe関数を用いて特徴量を確認します。量的なデータはそのまま利用できますが、質的なデータは一般的なdescribeの記述だけでは全てを確認できません。

そこで、特定の引数として、describe(include=["O"])の使い方を解説します。注意: ここでのO(オー)は、数字の0(ゼロ)とは異なりますのでご注意ください。

目次

データの概要と解析

全体的なデータの概要

ColumnCountUniqueTop ValueFrequencyMeanStdMin25%50%75%Max
id9995002881250500750999
age99954.3211836557390
balance99944213185-9801776428471329978
job99910services116

質的データの詳細情報

ColumnCountUniqueTop ValueFrequency
job99910services116
marital9993single366
default9992no952
housing9992no958
loan9992no947
contact9993unknown348
month99912nov100
poutcome9994success262

解説

  • describe(include="all")は、数字型データと質的データを一緒に概要を出力します。
  • 質的データのみを解析したい場合は、describe(include=["O"])を使用します。

ヒント

  • 引数の"O"は大文字のオーで、0ゼロとは異なります。このミスに注意して使用しましょう。

value_counts関数の使い方

次に、データの中でどのような値が多いか、具体的に調べる方法を紹介します。これにはvalue_counts関数を使用します。この関数は、特定の列内で各値が何回出現しているかを簡単に確認するための便利なツールです。

実例

以下は、データのjob列を対象にvalue_counts関数を使用した結果です。

import pandas as pd

# CSVデータを読み込み
file_path = '定期貯金契約に関するデモデータ.csv'
data = pd.read_csv(file_path)

# 各値の出現回数をカウント
job_counts = data['job'].value_counts()
print(job_counts)

出力結果:

services       116
blue-collar    109
technician     107
management     100
retired         91
admin.          90
unemployed      70
self-employed   65
entrepreneur    62
housemaid       57

解説

  • value_countsは、その列内で各値の頻度を自動的に計算してくれます。
  • 結果は出現回数の多い順に並びます。
  • この結果を使って、データ分布の偏りや代表的な値を把握できます。

よくあるつまずきポイント

  1. KeyError: 指定した列名が間違っているとエラーが出ます。
    • 対策:data.columnsで列名を確認しましょう。
  2. 欠損値の扱い: 欠損値が含まれている場合、デフォルトでは無視されます。
    • 対策:欠損値も含めたい場合は、dropna=Falseを引数に追加します。
    job_counts = data['job'].value_counts(dropna=False)
  3. 複数列を対象にしたい場合: value_countsは1列のみを対象にします。
    • 対策:各列に対してループを回して集計します。

実践例

次に、marital(婚姻状況)列で同様の分析を行います。

marital_counts = data['marital'].value_counts()
print(marital_counts)

出力結果:

single     366
married    357
divorced   276

このように、婚姻状況の内訳も簡単に確認できます。

まとめ

  • value_counts関数は、データ分布を理解するのに役立つ重要なツールです。
  • 列ごとの値の出現頻度を確認することで、データの特徴や偏りを把握できます。
  • 初心者でも使いやすい関数ですが、列名の指定ミスや欠損値の扱いに注意してください。

次回は、これらの分布を可視化する方法について解説します。グラフを用いることで、さらにデータの理解を深めましょう。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

CAPTCHA


目次