Boxplot与Python中的熊猫

die*_*ens 5 python visualization data-visualization pandas

这就像我的数据帧:

      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
Run Code Online (Sandbox Code Playgroud)

我想使用AVG和STD列(平均值和标准偏差)显示带有Pandas的Boxplot,我不知道如何开始.

例如,我想通过箱线图比较PART = 1,J = 3和P = 50的四种方法,看看这些值是否兼容(相似).

我很丢失,有什么指导吗?

编辑:下图显示了我想要的内容.其中A,B,C和D是方法,每个框由AVG的值与de STD组合创建,用于PART = 1,J = 3和P = 50.

在此输入图像描述

Vai*_*ali 5

您可以过滤数据框并使用参数by创建boxplot.

filtered_df = df[(df['PART'] == 1) & (df['J'] == 3) & (df['P'] == 50)]
filtered_df.boxplot(column = 'AVG', by = 'METHOD', patch_artist = True)
Run Code Online (Sandbox Code Playgroud)

对于以下样本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)})
Run Code Online (Sandbox Code Playgroud)

你得到

在此输入图像描述