你好,StackOverflow的人很棒!
我一直在掌握Python,并开始对我知道自己在做什么之前非常有信心,直到这个doozy出现:
我正在绘制和比较数据框的两个子选项,其中" Type" ="区域"和""。 Seaborn绘制了这些的箱形图并标记了平均值,但是当我使用.mean()计算平均值时,它给出了不同的答案。这是代码:
plotdata = df[df['Type'].isin(['A','B'])]
g = sns.violinplot(x="Type", y="value", data=plotdata, inner="quartile")
plt.ylim(ymin=-4, ymax=4) # This is to zoom on the plot to make the 0 line clearer
This is the resulting plot, note how the means are ~-0.1 and ~1.5
但是当我用以下方法计算它们时:
print(df_long[df_long['charttype'].isin(['area'])]['error'].mean())
print(df_long[df_long['charttype'].isin(['angle'])]['error'].mean())
它返回:
0.014542483333332705
-2.024809368191722
所以我的问题是,为什么这些数字不匹配?
答案 0 :(得分:0)
对基本统计数据的总体误解是问题!
箱形图(在seaborn小提琴图内)绘制了四分位数范围和MEDIAN,而我后来计算了平均值。
只需要睡在上面,嘿,所有人都会变得清晰。