这是我的数据框的样子:
PART METHOD J P AVG STD
0 1 meth1 3 50 0.914482 0.007398
1 1 meth2 3 50 0.925134 0.005738
... ... ... ... ... ... ...
190 4 meth4 7 150 0.913014 0.006144
191 4 meth4 7 200 0.914199 0.002962
我想使用AVG和STD列(平均值和标准偏差)显示带有 Pandas 的Boxplot,而我不知道如何开始。
例如,我想通过箱线图比较PART = 1,J = 3和P = 50的四种方法,以查看这些值是否兼容(相似)。
我很迷茫,有什么指导吗?
编辑:下图显示了我想要的。其中A,B,C和D是方法,并且每个框都是由AVG的值结合de STD来创建的,其中PART = 1,J = 3,P = 50。
最佳答案
您可以过滤数据框并使用参数by创建框线图。
filtered_df = df[(df['PART'] == 1) & (df['J'] == 3) & (df['P'] == 50)]
filtered_df.boxplot(column = 'AVG', by = 'METHOD', patch_artist = True)
对于以下示例df
df = pd.DataFrame({'PART':np.random.randint(1,4,10000), 'METHOD':np.random.choice(list('ABCD'), 10000), 'J':np.random.randint(3,7, 10000), 'P':np.random.randint(50,100, 10000),'AVG':np.random.randn(10000),'STD':np.random.randn(10000)})
你得到
关于python - 带有Python Pandas 的Boxplot,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53767621/