GIS奮闘記

元GISエンジニアの技術紹介ブログ。主にPythonを使用。

スポンサーリンク

Python で四分位数を計算する方法

さて、本日は Python で四分位数を計算する方法を紹介します。

四分位数とは

統計では、四分位数は、データポイントの数をほぼ等しいサイズの4つの部分、つまり4分の1に分割する分位数の一種です。(出典:Wikipedia)

つまり、データを四等分する三つのデータのことですね。それぞれ第1四分位数Q1(下から25%番目のデータ)、第2四分位数Q2(上から50%番目のデータ。中央値)、第3四分位数Q3(上から25%番目のデータ)と言います。

使用するライブラリ

pandas を使用します。

使用するデータ

以下で収集したSUUMOの中古物件の販売価格を使用します。

www.gis-py.com

使用するレコード

以下の10件を使用します。

import pandas as pd
df = pd.read_csv(r"D:\data\csv\property.csv")
df = df.head(10)
df

f:id:sanvarie:20210519111300p:plain

環境

Windows10 64bit
Python3.8.5

サンプルコード

四分位数を計算するサンプルです。pandas の quantile メソッドを使用します。

quantile1,quantile2,quantile3 = df["販売価格"].quantile([0.25, 0.5, 0.75])
print("第1四分位数" + str(quantile1))
print("第2四分位数" + str(quantile2))
print("第3四分位数" + str(quantile3))

このような結果になりました。

f:id:sanvarie:20210519113107p:plain

参考

外れ値を計算する場合は以下のようにすれば大丈夫です。

# 四分位範囲
iqr = quantile3 - quantile1

lower_bound = quantile1 - (iqr * 1.5)
upper_bound = quantile3 + (iqr * 1.5)

print("小さいほうの外れ値" + str(lower_bound))
print("大きい方の外れ値" + str(upper_bound))

小さいほうの外れ値より小さい値、もしくは、大きい方の外れ値より大きい値があれば外れ値とします。

f:id:sanvarie:20210519113201p:plain

さいごに

いかがでしょうか。pandas を使用すれば簡単に四分位数の計算ができます。興味のある方はぜひ使ってみてください。本日は以上です。