在seaborn regplot中显示回归方程

时间:2015-11-03 03:20:20

标签: python regression seaborn

有谁知道如何使用sns.regplot或sns.jointplot在seaborn中显示回归方程? regplot似乎没有任何参数可以传递给显示回归诊断,而jointplot只显示皮尔逊R ^ 2和p值。我正在寻找一种方法来查看斜率系数,标准误差和截距。

由于

2 个答案:

答案 0 :(得分:16)

2015年,seaborn的首席开发人员回复了一项功能请求,要求访问用于生成图表的统计值,并说"It is not available, and it will not be made available."

所以,不幸的是,这个功能在seaborn中不存在,并且似乎不太可能存在。

更新:2018年3月,seaborn的首席开发人员reiterated his opposition使用此功能。他似乎......对进一步讨论不感兴趣。

答案 1 :(得分:7)

迟到和部分答案。 我有一个问题,就是想获得回归线的数据,我发现了这个:

当你有这个情节时:

f = mp.figure()
ax = f.add_subplot(1,1,1)
p = sns.regplot(x=dat.x,y=ydat,data=dat,ax=ax)

然后p有一个方法get_lines(),它会返回line2D个对象的列表。并且line2D对象具有获取所需数据的方法:

因此,要获得此示例中的线性回归数据,您只需执行此操作:

p.get_lines()[0].get_xdata()
p.get_lines()[0].get_ydata()

这些调用返回每个回归线数据点的numpy数组,您可以自由使用它们。

使用p.get_children(),您可以获得图表中各个元素的列表。

置信区间图的路径信息可以通过以下方式找到:

p.get_children()[1].get_paths()

它采用数据点元组的形式。

通常可以在任何Python对象上使用dir()命令找到很多东西,它只显示那里的所有内容。