Pandasは、データ操作と分析のための強力なPythonライブラリです。Pandas DataFrameの列の平均(平均値)を計算することは、頻繁に必要となるタスクです。この記事では、df.mean()
メソッドとdf.describe()
メソッドを使用する2つの効率的な方法を紹介します。
目次:
df.mean()
による平均値の計算
df.mean()
メソッドは、DataFrame内のすべての数値列の平均を直接計算する簡単な方法を提供します。特定の列の平均を取得するには、ブラケット表記またはドット表記を使用して列を選択し、mean()
メソッドを適用します。
例を以下に示します。
import pandas as pd
# サンプルDataFrame
data = {'Name': ['Alice', 'Bob', 'Charlie', 'David'],
'Age': [25, 30, 22, 28],
'Score': [85, 92, 78, 88]}
df = pd.DataFrame(data)
# ブラケット表記による平均年齢
average_age = df['Age'].mean()
print(f"平均年齢: {average_age}")
# ドット表記による平均スコア
average_score = df.Score.mean()
print(f"平均スコア: {average_score}")
これにより、以下が出力されます。
平均年齢: 26.25
平均スコア: 85.75
重要なのは、df.mean()
は欠損値(NaN)を計算から除外することで、適切に処理することです。ただし、列に数値以外のデータが含まれている場合、TypeError
が発生します。このメソッドを使用する前に、列に数値のみが含まれていることを常に確認してください。
df.describe()
による記述統計の確認
df.describe()
メソッドは、DataFrameの記述統計の包括的な要約を生成します。これには、各数値列の平均、カウント、標準偏差、最小値、最大値、および四分位数が含まれます。平均値以上の情報を提供しますが、他の貴重な統計指標と合わせて平均値を取得する便利な方法です。
同じDataFrameを使用します。
import pandas as pd
# サンプルDataFrame(前と同じ)
data = {'Name': ['Alice', 'Bob', 'Charlie', 'David'],
'Age': [25, 30, 22, 28],
'Score': [85, 92, 78, 88]}
df = pd.DataFrame(data)
# 記述統計
summary_stats = df.describe()
print(summary_stats)
これにより、次のような表が出力されます。
Age Score
count 4.0 4.0000
mean 26.25 85.7500
std 3.50 6.2361
min 22.00 78.0000
25% 23.75 81.2500
50% 26.50 86.5000
75% 29.25 90.2500
max 30.00 92.0000
「Age」と「Score」の平均は明確に表示されています。df.describe()
は数値列のみを処理することに注意してください。
要約すると、df.mean()
とdf.describe()
の両方とも、Pandas DataFrameで列の平均を計算する効果的な方法を提供します。ニーズに最適なメソッドを選択してください。平均値のみが必要な場合はdf.mean()
、より広範な統計概要が必要な場合はdf.describe()
を使用します。これらのメソッドを適用する前に、潜在的なデータ型エラーを常に処理してください。