在逻辑回归中, 拟合了回归曲线y = f(x)。在回归曲线方程中, y是类别变量。该回归模型用于预测y给定了一组预测变量x。因此, 预测变量可以是分类的, 连续的或两者的混合。
逻辑回归是一种属于非线性回归的分类算法。该模型用于将给定的二进制结果(1/0, 是/否, 是/否)预测为一组独立变量。此外, 它有助于使用虚拟变量表示分类/二进制结果。
Logistic回归是一种回归模型, 其中响应变量具有分类值, 例如true / false或0/1。因此, 我们可以测量二进制响应的概率。
有以下用于逻辑回归的数学方程式:
y = 1 /(1 + e ^-(b0 + b1 x1 + b2 x2 +⋯))
在上式中, y是响应变量, x是预测变量, b0和b1, b2, … bn是系数, 是数字常数。我们使用glm()函数创建回归模型。
glm()函数具有以下语法。
glm(formula, data, family)
这里,
S.No | Parameter | Description |
---|---|---|
1. | formula | 它是一个表示变量与变量之间的关系的符号。 |
2. | data | 它是提供变量值的数据集。 |
3. | family | 一个R对象, 它指定模型的详细信息, 其值对于逻辑回归是二项式的。 |
建立逻辑回归
内置数据集” mtcars”描述了具有不同发动机规格的各种车型。在” mtcars”数据集中, 传输模式由列” am”描述, 该列是二进制值(0或1)。我们可以在” am”列与其他三列hp, wt和cyl之间构建逻辑回归模型。
让我们看一个示例, 以了解如何使用glm函数创建逻辑回归, 以及如何使用summary函数查找分析摘要。
在我们的示例中, 我们将使用R环境中可用的数据集” BreastCancer”。要使用它, 我们首先需要安装” mlbench”和” caret”软件包。
例子
#Loading library
library(mlbench)
#Using BreastCancer dataset
data(BreastCancer, package = "mlbench")
breast_canc = BreastCancer[complete.cases(BreastCancer), ]
#Displaying the information related to dataset with the str() function.
str(breast_canc)
输出
现在, 我们将数据分为训练集和测试集, 训练集包含70%的数据, 测试集包括剩余百分比。
#Dividing dataset into training and test dataset.
set.seed(100)
#Creating partitioning.
Training_Ratio <- createDataPartition(b_canc$Class, p=0.7, list = F)
#Creating training data.
Training_Data <- b_canc[Training_Ratio, ]
str(Training_Data)
#Creating test data.
Test_Data <- b_canc[-Training_Ratio, ]
str(Test_Data)
输出
现在, 我们借助glm()函数构造逻辑回归函数。我们将公式Class_Cell.shape作为第一个参数, 并将属性族指定为” binomial”, 并使用Training_data作为第三个参数。
例子
#Creating Regression Model
glm(Class ~ Cell.shape, family="binomial", data = Training_Data)
输出
现在, 使用摘要功能进行分析。
#Creating Regression Model
model<-glm(Class ~ Cell.shape, family="binomial", data = Training_Data)
#Using summary function
print(summary(model))
输出
评论前必须登录!
注册