R分类算法-Logistic回归算法

本文介绍了R语言中Logistic Regression(逻辑回归)算法的应用。逻辑回归是一种将线性回归通过Logistic函数转换,用于处理分类问题的方法。该算法简单易实现,执行效率和准确度较高,但处理离散型数据时需转换为虚拟变量。R中可通过glm函数进行模型训练,公式参数和数据集作为输入。
摘要由CSDN通过智能技术生成

逻辑回归 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  227
prop.table(table(data.test$Home.Ownership, data.test.predict), 1)
 Own      Rent
  Own  0.8523810 0.1476190
  Rent 0.2770701 0.7229299
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值