R分类算法-Logistic回归算法

来源:互联网 发布:减肥软件有哪些 编辑:程序博客网 时间:2024/05/19 01:58

逻辑回归 Logistic Regression

所谓LR,就是一个被Logistic方程归一化后的线性回归,可以将非线性的问题转化为线性问题。
优点:
算法易于实现和部署,执行效率和准确度高
缺点:
离散型的数据需要通过生产虚拟变量的方式来使用。
R API
glm(formula,data)

  • formula 建模表达式
  • data 训练数据

glm会自动帮我们把变量离散化,不需要自己设置虚拟变量了。

代码实现:

data <- read.csv("customers.csv")data <- data[data$Gender!='NULL' & data$Marital.Status!='NULL',]data <- data[, colnames(data)!='CustomerID']formula <- Home.Ownership ~ .;total <- nrow(data)index <- sample(1:total, total*0.7)data.train <- data[index, ]data.test <- data[-index, ]data.train.glm = glm(  formula = formula,   data = data.train,  family='binomial')data.test.predict <- predict(  data.train.glm,   newdata = data.test,  type="response")data.test.predict <- ifelse(data.test.predict>0.5, "Rent", "Own")table(data.test$Home.Ownership, data.test.predict)data.test.predict       Own Rent  Own  537   93  Rent  87  227prop.table(table(data.test$Home.Ownership, data.test.predict), 1) Own      Rent  Own  0.8523810 0.1476190  Rent 0.2770701 0.7229299