我有一個熊貓數據框:df = pd.DataFrame(data = {'X':['Jason', 'Molly', 'Tina', 'Jason', 'Tina', 'Tina'], 'Y': [13,19,52,14,12,12]}) X Y0 Jason 131 Molly 192 Tina 523 Jason 144 Tina 125 Tina 12我想在 matplotlib 中重新創(chuàng)建 seaborn 庫的 catplot 功能,例如:sns.catplot(x='X', y='Y', kind="box", data=df)所以我這樣做:plt.boxplot(df.X, df.Y)但這不起作用,我收到一個錯誤:TypeError:無法使用靈活類型執(zhí)行歸約如何在 matplotlib 中獲得相同的結果?我在 matplotlib 中執(zhí)行此操作,因為使用 seaborn,我必須手動更改 x,并且我想使用 for 循環(huán)動態(tài)更改 x
1 回答

楊__羊羊
TA貢獻1943條經驗 獲得超7個贊
沒有直接的等價物,因為 seaborn 首先按 x 對數據進行分組。使用 matplotlib 時,您需要手動進行分組,
import pandas as pd
import matplotlib.pyplot as plt
df = pd.DataFrame(data = {'X':['Jason', 'Molly', 'Tina', 'Jason', 'Tina', 'Tina'],
'Y': [13,19,52,14,12,12]})
plt.boxplot([col.Y.values for n, col in df.groupby("X")])
plt.show()
添加回答
舉報
0/150
提交
取消