gpt4 book ai didi

statistics - seaborn pairplot 中的稳健统计线性回归

转载 作者:行者123 更新时间:2023-12-05 07:49:47 25 4
gpt4 key购买 nike

尝试实现稳健的统计数据而不是普通的最小二乘法 (OLS) 拟合,这样离群值就不会成为我拟合的问题。我希望在 seaborn 的 pairplot 函数中实现这一点,但看不到从 AP 文档中添加这一点的简单方法,因为似乎没有合适的关键字参数。

发件人:scipy lectures他们建议使用以下内容,但我想这就是 regplot,您可以在其中使用

定义拟合
`fit = statsmodels.formula.api.rlm()`

这里是一些示例代码

import seaborn as sns; sns.set(style="ticks", color_codes=True)
import matplotlib.pyplot as plt
%matplotlib inline
iris = sns.load_dataset("iris")
sns.pairplot(iris, kind="reg")#, robust = True)
plt.show()

提前致谢!

编辑:我找到了一个解决方法,但显然可以在 pairplot 上松开 'hue' 函数。为 pairplot 添加强大的选项将是一个很好的功能。代码:

def corrfunc(x, y, **kws): 
r, _ = stats.pearsonr(x, y)
ax = plt.gca()
ax.annotate("r = {:.2f}".format(r), xy=(.1, .9), xycoords=ax.transAxes)

g = sns.PairGrid(df1, palette=["red"])
g.map_upper(sns.regplot, robust = True)
g.map_diag(sns.distplot, kde=True)
g.map_lower(sns.kdeplot, cmap="Blues_d")
g.map_lower(corrfunc)

最佳答案

额外的关键字,例如“robust = True”可以通过 plot_kws 参数传递给 regplot:

sns.pairplot(df1,kind='reg',hue='species',plot_kws=dict(robust=True,n_boot=50))

注意:在此示例中,我还减少了 n_boot 以减少运行时间(请参阅 regplot 文档中的“稳健”),因此置信区间可能不正确)。

关于statistics - seaborn pairplot 中的稳健统计线性回归,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36945038/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com