Python Pandas グルーピングと統計量
Pandasでデータ分析をするときに便利なグルーピングと、それを使った統計データ、グラフの作り方。
モジュールのインポート
print("実行環境")
import pandas as pd
import matplotlib as mpl
import matplotlib.pyplot as plt
import seaborn as sns
!python -V
print('pandas ' + pd.__version__)
print('matplotlib ' + mpl.__version__)
print('seaborn ' + sns.__version__)
実行環境
Python 3.8.5
pandas 1.1.3
matplotlib 3.3.2
seaborn 0.11.0
# 出力時の表示を指定の数値以下にする
pd.set_option('display.max_rows', 10)
pd.set_option('display.max_columns', 1000)
irisデータセットを用いてグルーピングをしていく。
# データの準備
iris_data = pd.read_csv('iris_test.csv')
iris_data
グループ化
特定の列でグループ化する。
iris_species_group = iris_data.groupby('species')
iris_species_group.size() #グループ化の結果と要素数の確認
species
Setosa 50
Versicolor 50
Virginica 50
dtype: int64
統計量の確認
数値テーブル化
グループ化した統計データを一覧する
iris_species_group.describe()
グラフ化
iris_data.groupby('species').mean()
箱ひげ図
上記統計量をグラフ化する。グループ毎に箱ひげ図を描く。
fig, axes = plt.subplots(1, 4, figsize=(16,4), sharey='row')
for i, graph in zip(range(4), axes.ravel()):
sns.boxplot(y=iris_data.iloc[:,i],x=iris_data['species'], ax=graph);
この記事が気に入ったらサポートをしてみませんか?