如何使用两个不同的数据帧绘制单个群图?

时间:2018-07-24 13:13:29

标签: pandas ipython

我有一个如下所示的df:

df1:

value 
1.2
2.2
3.3
4.3
3.1
2.1
....

我有另一个外观相似但值不同的df:

df2:

value 
1.0
1.2
1.3
2.9
3.1
1.9
....

我想作一个群图,以便在同一图上同时拥有df1和df2,因此我可以直接比较两者。理想情况下,我还要在两者之间进行某种t检验。我可以在熊猫里做吗?

1 个答案:

答案 0 :(得分:1)

IIUC,您可以通过合并数据帧并重塑来做到这一点:

df3 = pd.concat([df1,df2], axis=1, keys=['df1','df2']).stack(0)

df3 = df3.reset_index(level=1)

sns.swarmplot(x='level_1',y='value', data=df3)

输出: enter image description here

和T-Test:

from scipy.stats import ttest_ind

ttest_ind(df1['value'],df2['value'])

输出:

Ttest_indResult(statistic=1.3828776509907013, pvalue=0.1967994944161096)