見出し画像

Python始めました。pandas マルチインデックス

マルチインデックスのデータを並べ替えて 横棒グラフを書く

import pandas as pd

df = pd.read_excel('./~.xlsx')

# マルチインデックス 要素数の上位20項目
df_id = df[ [ 'A' , 'B' ] ].value_counts()[0:20]

df_id.sort_values(inplace=True) # 要素でソート

# インデックスを解体して結合
y = [ id[0] + '_' + id[1] for id in df_id.index ]
x = df_id.values
# 横棒グラフを書く
import matplotlib.pyplot as plt

fig, ax = plt.subplots()
ax.barh(y,x)
plt.show()

少しつまづいたのでメモしました。

※:2022/7/17 修正(x、yのソートを個別にしていた。)



サポートを頂けると、沢山記事が書けると思います。