「pandasでデータフレームの基本統計情報を一度に取得しよう!(describe()関数の使い方)」

python

概要

Pythonのpandasライブラリには、データフレームを分析するためのさまざまな便利な関数が用意されています。

その中でも、describe()関数は、データセットの基本的な統計情報を取得するための重要な関数です。

この関数を使うと、数値データの基本統計量(平均、中央値、最大値、最小値、分散、標準偏差など)が簡単に確認できます。

詳細内容

pandasライブラリのdescribe()関数を使うことで、データフレームの基本的な統計情報を一度に取得することができます。

この関数は、データフレームに含まれる数値データの基本統計量(平均、中央値、最大値、最小値、分散、標準偏差など)を表示してくれます。

describe()関数は、以下のように使います。

まず、データフレームを読み込んでから、そのデータフレームに対してdescribe()関数を実行します。

python
import pandas as pd# データフレームの読み込み
df = pd.read_csv("data.csv")# describe()関数を実行する
df.describe()

このコードを実行すると、データフレームに含まれる数値データの基本統計量が、以下のような形式で表示されます。


       列1      列2      列3      列4
count   1000.000000   1000.000000   1000.000000   1000.000000
mean      50.054000     49.950000     50.019000     50.077000
std        0.316038      0.281761      0.303820      0.289837
min       49.310000     49.010000     49.210000     49.100000
25%       49.820000     49.750000     49.790000     49.840000
50%       50.045000     49.945000     50.020000     50.080000
75%       50.280000     50.140000     50.240000     50.330000
max       50.900000     50.820000     50.880000     50.760000

この表から、データフレームに含まれる数値データが、それぞれの列ごとにcount、mean、std、min、25%、50%、75%、maxという項目で示されています。

countはその列に含まれるデータの件数を表しています。

meanは平均値、stdは標準偏差、minは最小値、25%、50%、75%はそれぞれ25パーセンタイル、50パーセンタイル、75パーセンタイルに位置する値を表しています。

maxは最大値を表しています。

describe()関数の戻り値はデータフレーム型であり、この戻り値を利用して、さらにいろいろな処理を行うことができます。

たとえば、データフレームの特定の列に含まれる数値データの平均値を求めたい場合は、以下のようなコードを書くことができます。

python
import pandas as pd# データフレームの読み込み
df = pd.read_csv("data.csv")# 列1の平均値を求める
mean1 = df["列1"].describe()["mean"]
print(mean1)

このコードを実行すると、列1に含まれる数値データの平均値が表示されます。

describe()関数は、データフレームに含まれるNaN(欠損値)についても適切に扱います。

たとえば、以下のようなデータフレームがあるとします。


   列1   列2
0   1  2.0
1   3  NaN
2   5  6.0

このデータフレームに対してdescribe()関数を実行すると、以下のような結果が得られます。


            列1         列2
count  3.000000   2.000000
mean   3.000000   4.000000
std    2.449490   2.828427
min    1.000000   2.000000
25%    2.000000   3.000000
50%    3.000000   4.000000
75%    4.000000   5.000000
max    5.000000   6.000000

列2にはNaN(欠損値)が含まれていますが、それでもcountは2となっており、データフレームに含まれる数値データのみが統計情報として表示されています。

なお、describe()関数におけるパーセンタイル(25%、50%、75%)は、それぞれ第1四分位数、中央値、第3四分位数を表しています。

第1四分位数は、データを小さい順に並べたときに25%の位置にある値を表し、第3四分位数は75%の位置にある値を表しています。

つまり、25%以下のデータは第1四分位数以下、25%以上50%以下のデータは第1四分位数と第3四分位数の間、75%以上のデータは第3四分位数以上ということになります。

コメント

タイトルとURLをコピーしました