0.12.0.dev0
  • Gallery
  • Tutorial
  • API
  • Site
      • 发行说明
      • 安装
      • 示例库
      • 教程
      • API引用
      • 引用
      • 档案文件
  • Page
      • seaborn.regplot

seaborn.regplot¶

seaborn.regplot(*, x=None, y=None, data=None, x_estimator=None, x_bins=None, x_ci='ci', scatter=True, fit_reg=True, ci=95, n_boot=1000, units=None, seed=None, order=1, logistic=False, lowess=False, robust=False, logx=False, x_partial=None, y_partial=None, truncate=True, dropna=True, x_jitter=None, y_jitter=None, label=None, color=None, marker='o', scatter_kws=None, line_kws=None, ax=None)¶

绘图数据和线性回归模型拟合。

估计回归模型有许多相互排斥的选项。看到了吗 tutorial 更多信息。

参数
x、 y:字符串、序列或向量数组

输入变量。如果是字符串,则应与中的列名相对应 data . 熊猫的名称将与系列一起使用。

dataDataFrame

整洁(“长格式”)数据帧,其中每列是一个变量,每行是一个观察值。

x_estimator映射向量->标量的可调用函数,可选

将此函数应用于 x 并绘制出估算结果。这在以下情况下很有用 x 是离散变量。如果 x_ci 给出了该估计的自举和置信区间。

x_binsint或vector,可选

垃圾箱 x 将变量转化为离散的数据箱,然后估计中心趋势和置信区间。这种分块只影响散点图的绘制方式;回归仍然适用于原始数据。此参数可解释为大小均匀(无需间隔)的料仓数量或料仓中心的位置。使用此参数时,表示 x_estimator 是 numpy.mean .

x_ci“ci”,“sd”,int英寸 [0, 100] 或无,可选

绘制离散值的中心趋势时使用的置信区间的大小 x .如果 "ci" ,遵从 ci 参数。如果 "sd" ,跳过自举,并显示每个箱中观测值的标准偏差。

scatter可选的布尔

如果 True ,绘制一个包含基本观测值的散点图(或 x_estimator 价值观)。

fit_reg可选的布尔

如果 True ,估计并绘制与 x 和 y 变量。

ciint输入 [0, 100] 或无,可选

回归估计的置信区间大小。这将使用围绕回归线的半透明条带绘制。置信区间是使用bootstrap估计的;对于大型数据集,建议通过将此参数设置为None来避免这种计算。

n_boot可选的

用于估计 ci . 默认值试图平衡时间和稳定性;您可能希望为绘图的“最终”版本增加此值。

单位 :中的变量名 data 可选中的变量名

如果 x 和 y 观测值嵌套在采样单位中,可在此处指定。在计算置信区间时,通过对单位和观测值(单位内)进行重采样的多级引导,将考虑到这一点。否则,这不会影响如何估计或绘制回归。

seed内景,随机数发生器,或numpy.random.RandomState随机状态,可选

种子或随机数发生器可复制的引导。

order可选的

如果 order 大于1,使用 numpy.polyfit 估计多项式回归。

logistic可选的布尔

如果 True ,假设 y 是一个二进制变量,使用 statsmodels 估计logistic回归模型。请注意,这比线性回归的计算量大得多,因此您可能希望减少引导重采样的数量 (n_boot )或设置 ci 一点也没有。

lowess可选的布尔

如果 True 使用 statsmodels 估计非参数lowess模型(局部加权线性回归)。请注意,目前无法为此类模型绘制置信区间。

robust可选的布尔

如果 True 使用 statsmodels 稳健回归。这将降低异常值的权重。请注意,这比标准线性回归的计算量要大得多,因此您可能希望减少引导重采样的数量 (n_boot )或设置 ci 一点也没有。

logx可选的布尔

如果 True ,估计y~log(x)形式的线性回归,但在输入空间绘制散点图和回归模型。请注意 x 必须是积极的,这样才能起作用。

{{x,y}}_partial :中的字符串 data 或矩阵字符串输入

混杂变量回归出 x 或 y 打印前的变量。

truncate可选的布尔

如果 True ,回归线受数据限制。如果 False ,它延伸到 x 轴限制。

{x,y}_jitter浮动,可选

将此大小的均匀随机噪声添加到 x 或 y 变量。拟合回归后,噪声被添加到数据的副本中,并且只影响散点图的外观。这在绘制采用离散值的变量时非常有用。

label一串

应用于散点图或回归线的标签(如果 scatter 是 False )用于图例。

colormatplotlib颜色

用颜色表示;用颜色表示所有的元素 scatter_kws 或 line_kws .

markermatplotlib标记代码

用于散点图图示符的标记。

{scatter,line}_kws词典

要传递到的其他关键字参数 plt.scatter 和 plt.plot .

axmatplotlib轴,可选

轴对象,否则使用当前轴。

返回
axmatplotlib轴

包含绘图的轴对象。

参见

lmplot

联合收割机 regplot() 和 FacetGrid 在数据集中绘制多个线性关系。

jointplot

联合收割机 regplot() 和 JointGrid (与一起使用时) kind="reg" )

pairplot

联合收割机 regplot() 和 PairGrid (与一起使用时) kind="reg" )

residplot

绘制线性回归模型的残差。

笔记

这个 regplot() 和 lmplot() 功能是密切相关的,但前者是一个轴级功能,后者是一个图形级功能,结合 regplot() 和 FacetGrid .

它也很容易组合 regplot() 和 JointGrid 或 PairGrid 通过 jointplot() 和 pairplot() 函数,尽管它们并不直接接受所有 regplot() 的参数。

实例

绘制数据帧中两个变量之间的关系:

>>> import seaborn as sns; sns.set_theme(color_codes=True)
>>> tips = sns.load_dataset("tips")
>>> ax = sns.regplot(x="total_bill", y="tip", data=tips)
../_images/seaborn-regplot-1.png

使用定义为numpy数组的两个变量打印;使用不同的颜色:

>>> import numpy as np; np.random.seed(8)
>>> mean, cov = [4, 6], [(1.5, .7), (.7, 1)]
>>> x, y = np.random.multivariate_normal(mean, cov, 80).T
>>> ax = sns.regplot(x=x, y=y, color="g")
../_images/seaborn-regplot-2.png

用两个定义为系列的变量绘图;使用不同的标记:

>>> import pandas as pd
>>> x, y = pd.Series(x, name="x_var"), pd.Series(y, name="y_var")
>>> ax = sns.regplot(x=x, y=y, marker="+")
../_images/seaborn-regplot-3.png

使用68%置信区间(与估计的标准误差相对应),并将回归线延伸至轴限:

>>> ax = sns.regplot(x=x, y=y, ci=68, truncate=False)
../_images/seaborn-regplot-4.png

离散曲线图 x 变量并添加一些抖动:

>>> ax = sns.regplot(x="size", y="total_bill", data=tips, x_jitter=.1)
../_images/seaborn-regplot-5.png

离散曲线图 x 显示唯一值的均值和置信区间的变量:

>>> ax = sns.regplot(x="size", y="total_bill", data=tips,
...                  x_estimator=np.mean)
../_images/seaborn-regplot-6.png

将连续变量划分为离散箱的绘图:

>>> ax = sns.regplot(x=x, y=y, x_bins=4)
../_images/seaborn-regplot-7.png

拟合高阶多项式回归:

>>> ans = sns.load_dataset("anscombe")
>>> ax = sns.regplot(x="x", y="y", data=ans.loc[ans.dataset == "II"],
...                  scatter_kws={"s": 80},
...                  order=2, ci=None)
../_images/seaborn-regplot-8.png

拟合稳健回归且不绘制置信区间:

>>> ax = sns.regplot(x="x", y="y", data=ans.loc[ans.dataset == "III"],
...                  scatter_kws={"s": 80},
...                  robust=True, ci=None)
../_images/seaborn-regplot-9.png

拟合逻辑回归;抖动y变量并使用较少的引导迭代:

>>> tips["big_tip"] = (tips.tip / tips.total_bill) > .175
>>> ax = sns.regplot(x="total_bill", y="big_tip", data=tips,
...                  logistic=True, n_boot=500, y_jitter=.03)
../_images/seaborn-regplot-10.png

使用对数(x)拟合回归模型:

>>> ax = sns.regplot(x="size", y="total_bill", data=tips,
...                  x_estimator=np.mean, logx=True)
../_images/seaborn-regplot-111.png

Back to top

© Copyright 2012-2021, Michael Waskom. 构建基于 Sphinx 3.4.1.