有谁知道如何使用sns.regplot或sns.jointplot在seaborn中显示回归方程? regplot似乎没有任何参数可以传递给显示回归诊断,而jointplot只显示皮尔逊R ^ 2和p值。我正在寻找一种方法来查看斜率系数,标准误差和截距。
由于
答案 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()
命令找到很多东西,它只显示那里的所有内容。