使用公共轴绘制两个变量的装箱相关性



我已经将三个列表加载到pandas数据帧中。

import pandas as pd
df = pd.DataFrame({'x': location})
df = df.assign(y1 = variable1)
df = df.assign(y2 = variable2)

我想画出y1和y2的相关性,其中x是公共x轴。也就是说,实际上,我想根据x位置对y1和y2值进行分类,在每个分类中找到y1与y2的相关性,然后绘制整个x域的相关性线。所以我的最终图在y轴上有相关性,在x轴上有位置。

我以前做过一些与此没有完全不同的事情,使用scipybinned_statistics函数绘制条件均值,但我不认为我可以轻易地将其扩展到相关性。无论如何,我也想在使用熊猫方面做得更好,所以如果可能的话,我会尽量避开这条路线。

我相信以前有人问过这个问题,但我遇到的一切似乎都在关注多个分布图。

我或多或少已经找到了一个解决方案。实现类似于我在这里使用的东西:

nbins = 20
df['bins'] = pd.qcut(df['x'], q=nbins)
plotdatadf = df.groupby('bins')[['y1', 'y2']].corr().iloc[0::2, -1]

这为我提供了一个数据帧,每个仓的相关系数为y1y2,其中根据每个仓的观测值,仓沿x均匀划分。

现在,我可以返回到上一个数据帧,添加具有这些相关值的原始长度的另一列,条件是if bin[1] then corr = corr[1]类型的复制。然后,可以将此列绘制为y,将我现有的x绘制为折线图。

相关内容

  • 没有找到相关文章

最新更新