Seaborn.regplot() 方法
seaborn.regplot() 方法用于绘制数据并绘制线性回归模型拟合。 估计回归模型有多种选择,所有这些都是相互排斥的。
我们可能已经知道,回归分析是一种用于评估独立因素与相关属性之间关系的技术。 因此,该模型用于创建回归图。
regplot() 和 lmplot() 函数比较接近,但是 regplot() 方法是坐标轴级别的函数,而另一个不是。 作为此方法的结果返回包含绘图的 Matplotlib 轴。
语法
以下是 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)
参数
下面讨论了 regplot() 方法的一些参数。
S.No | 参数及说明 |
---|---|
1 | x,y 这些参数将变量名称作为绘制长格式数据的输入。 |
2 | data 这是用于绘制图形的数据框。 |
3 | x_estimator 这是一个接受值并将向量映射到标量的可调用对象。 它是一个可选参数。 x 的每个不同值都应用于此函数,并绘制估计值作为结果。 当 x 是离散变量时,这很有用。 如果提供了 x_ci,这个估计将被引导并绘制一个置信区间。 |
4 | x_bins 此可选参数接受 int 或 vector 作为输入。 x 变量被分箱到离散箱中,然后估计集中趋势和置信区间。 |
5 | {x,y}_jitter 此可选参数接受浮点值。 将此大小的均匀随机噪声添加到 x 或 y 变量。 |
6 | color 用于指定单一颜色,该颜色应用于所有绘图元素。 |
7 | marker 这是用于在图表中绘制数据点的标记。 |
8 | x_ci 从 [0, 100] 或 None 中的 ci, "sd", int 取值。 这是一个可选参数。 绘制 x 的离散值的集中趋势时使用的置信区间的大小由传递给此参数的值决定。 |
9 | logx 采用布尔值,如果为 True,则在输入空间中绘制散点图和回归模型,同时还估计类型为 y log(x) 的线性回归。 为此,x 必须为正。 |
加载 seaborn 库
让我们在继续开发绘图之前加载 seaborn 库和数据集。 要加载或导入 seaborn 库,可以使用以下代码行。
Import seaborn as sns
加载数据集
在本文中,我们将使用 seaborn 库中内置的 Titanic 数据集。 以下命令用于加载数据集。
titanic=sns.load_dataset("titanic")
下面提到的命令用于查看数据集中的前 5 行。 这使我们能够了解哪些变量可用于绘制图形。
titanic.head()
以下是上面这段代码的输出。
index,survived,pclass,sex,age,sibsp,parch,fare,embarked,class,who,adult_male,deck,embark_town,alive,alone 0,0,3,male,22.0,1,0,7.25,S,Third,man,true,NaN,Southampton,no,false 1,1,1,female,38.0,1,0,71.2833,C,First,woman,false,C,Cherbourg,yes,false 2,1,3,female,26.0,0,0,7.925,S,Third,woman,false,NaN,Southampton,yes,true
既然我们已经加载了数据集,我们将探索几个例子。
示例 1
在这个例子中,我们将通过使用内置数据集 titanic 绘制一个简单的回归图。 泰坦尼克数据集的 fare 和 age 列分别传递给 x 和 y 参数。 在这里,两列都是数字类型。 此外,颜色参数用于设置绘图上绘制的数据点的颜色。 在下面的代码中,传递了"g",这意味着获得的绘图将具有绿色的数据点。
import seaborn as sns import matplotlib.pyplot as plt titanic=sns.load_dataset("titanic") titanic.head() sns.regplot(x="fare", y="age",color="g", data=titanic) plt.show()
输出
得到的图如下,
示例 2
在这个例子中,使用了marker参数。 这是用于在图表中绘制数据点的标记。 在下面的示例中,标记传入"*",因此获得的图将具有标记为"*"的观察值。
import seaborn as sns import matplotlib.pyplot as plt titanic=sns.load_dataset("titanic") titanic.head() sns.regplot(y="fare", x="age",color="g", marker="*",data=titanic) plt.show()
输出
the plot obtained is below.
示例 3
在这个例子中,我们将了解 y_jitter 参数的工作原理。 此可选参数接受浮点值,并将此大小的均匀随机噪声添加到图中的 x 或 y 变量。 它可以在您的代码中使用,如下所示。
import seaborn as sns import matplotlib.pyplot as plt titanic=sns.load_dataset("titanic") titanic.head() sns.regplot(y="fare", x="age", y_jitter=.9,data=titanic) plt.show()
输出
the output plot obtained is attached below.
示例 4
现在,我们将了解 bins 参数的行为方式。 此可选参数接受 int 或 vector 作为输入。 x 变量被分箱到离散箱中,然后估计集中趋势和置信区间。 在下面的示例中,整数 5 被传递给 x_bins 并观察输出。
import seaborn as sns import matplotlib.pyplot as plt titanic=sns.load_dataset("titanic") titanic.head() sns.regplot(y="fare", x="age",x_bins=5,data=titanic) plt.show()
输出
the graph produced is below.