数学建模常用算法之Logistic回归

news2024/9/23 14:28:01

数学建模常用算法之Logistic回归

  • 目录
    • 一元回归
      • 一元线性回归
      • 一元非线性回归
    • 多元回归
    • 逐步回归
    • logistic回归

目录

一元回归

一元线性回归

最小二乘法

设:

y=bx+a

在这里插入图片描述

即可求得

%% 输入数据
clc, clear all, close all
x=[23.80,27.60,31.60,32.40,33.70,34.90,43.20,52.80,63.80,73.40];
y=[41.4,51.8,61.70,67.90,68.70,77.50,95.90,137.40,155.0,175.0];	
%% 采用最小二乘回归
% 绘制散点图,判断是否具有线性关系
figure
plot(x,y,'r*')                         %作散点图
xlabel('x(职工工资总额)','fontsize', 12)           %横坐标名
ylabel('y(商品零售总额)', 'fontsize',12)           %纵坐标名
set(gca,'linewidth',2);
% 采用最小二乘拟合
Lxx=sum((x-mean(x)).^2);
Lxy=sum((x-mean(x)).*(y-mean(y)));
b1=Lxy/Lxx;
b0=mean(y)-b1*mean(x);
y1=b1*x+b0;
hold on
plot(x, y1,'linewidth',2);

在这里插入图片描述

其他方法

  1. linearModel.fit函数
%% 采用LinearModel.fit函数进行回归
m2 = LinearModel.fit(x,y)


线性回归模型:
    y ~ 1 + x1

估计系数:
                   Estimate      SE       tStat       pValue  
                   ________    _______    ______    __________

    (Intercept)    -23.549      5.1028    -4.615     0.0017215
    x1              2.7991     0.11456    24.435    8.4014e-09


观测值数目: 10,误差自由度: 8
均方根误差: 5.65
R 方: 0.987,调整 R 方 0.985
F 统计量(常量模型): 597,p 值 = 8.4e-09

  1. regress函数
    在这里插入图片描述

%% 采用regress函数进行回归
Y=y';
X=[ones(size(x,2),1),x'];
[b, bint, r, rint, s] = regress(Y, X)

b =

  -23.5493
    2.7991


bint =

  -35.3165  -11.7822
    2.5350    3.0633


r =

   -1.6697
   -1.9064
   -3.2029
    0.7578
   -2.0810
    3.3600
   -1.4727
   13.1557
   -0.0346
   -6.9062


rint =

  -14.1095   10.7701
  -14.7237   10.9109
  -16.1305    9.7247
  -12.5148   14.0304
  -15.3118   11.1497
   -9.7162   16.4362
  -14.9630   12.0176
    7.2091   19.1024
  -11.9937   11.9245
  -14.7576    0.9453


s =

    0.9868  597.0543    0.0000   31.9768

变量解释
在这里插入图片描述

一元非线性回归

主要是解决回归方程中的参数估计问题,即fitnlm函数的使用

参考资料:传送门

  • 对数形式估计
%% 对数形式
m1 = @(b,x) b(1) + b(2)*log(x);
nonlinfit1 = fitnlm(x,y,m1,[0.01;0.01])
b=nonlinfit1.Coefficients.Estimate;
Y1=b(1,1)+b(2,1)*log(x);
  • 指数形式估计

%% 指数形式拟合
m2 = 'y ~ b1*x^b2';
nonlinfit2 = fitnlm(x,y,m2,[1;1])
b1=nonlinfit2.Coefficients.Estimate(1,1);
b2=nonlinfit2.Coefficients.Estimate(2,1);
Y2=b1*x.^b2;

根据xxx.Coefficients.Estimate得到参数

多元回归

观察是否具有线性关系,使用regress函数

X=[ones(n,1),x1',x2',x3'];
[b, bint, r, rint, s] = regress(Y', X,0.05);

逐步回归

资料:传送门

logistic回归

Logistic回归来做分类问题,我们想要的函数应该是,能接受所有的输入然后预测出类别。例如,在两个类的情况下,上述函数输出0或1。

%% 数据准备
clear all
clc
X0=xlsread('logistic_ex1.xlsx', 'A2:C21'); % 回归数据X值
XE=xlsread('logistic_ex1.xlsx', 'A2:C26'); % 验证与预测数据
Y0=xlsread('logistic_ex1.xlsx', 'D2:D21'); % 回归数据P值
%使用二项分布的模型进行预测
GM = fitglm(X0,Y0,'Distribution','binomial');
Y1=predict(GM,XE);
N1=1:1:size(XE,1);
plot(N1',Y1)

结果

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/728293.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Zabbix 的使用

Zabbix 的使用 一、添加 zabbix 客户端主机1.1 环境准备1.2 服务端和客户端都配置时间同步1.3 服务端和客户端都设置 hosts 解析1.4 设置 zabbix 的下载源,安装 zabbix-agent21.5 修改 agent2 配置文件1.6 启动 zabbix-agent21.7 在服务端验证 zabbix-agent2 的连通…

粮油溯源系统源码 全流程可视化质量溯源系统源码

粮油质量溯源系统源码 粮油溯源系统是从种植到加工、包装、库存、物流、销售、售出、异常反馈的全流程可视化质量溯源系统。 粮油安全关系千千万万消费者的健康问题。近年来,许多食品行业安全事故频频涌现,成为社会关注焦点。粮油做为人们生活饮食中的…

jpa使用uuid策略后无法手动设置id的问题

实体对象定义如下: Data Entity Table(name "sys_user") public class UserDO {/** 用户id */IdGenericGenerator(name "uuid", strategy "org.hibernate.id.UUIDGenerator")GeneratedValue(generator "uuid")Column(…

linux ifconfig: command not found

ifconfig 报 -bash: ifconfig: command not found 此时我们查看 /sbin 目录,会发现他是没有 ifconfig 相关文件的 ls | grep ifconfig # 查看不到相关文件 ip addr 后显示 ens33没有ip地址 发现 ens33 没有 inet 这个属性,那么就没法通过IP地…

【Distributed】分布式监控系统zabbix应用(二)

文章目录 一、部署 Zabbix 代理服务器1. 分布式监控的作用2. 部署过程2.1 设置 zabbix 的下载源,安装 zabbix-proxy2.2 部署数据库2.3 导入数据库信息2.4 修改 zabbix-proxy 配置文件2.5 启动 zabbix-proxy2.6 在所有主机上配置 hosts 解析2.7 在 Web 页面配置 agen…

iOS打包IPA教程

转载:xcode打包导出ipa 众所周知,在开发苹果应用时需要使用签名(证书)才能进行打包安装苹果 IPA,作为刚接触ios开发的同学,只是学习ios app开发内测,并没有上架appstore需求,对于苹…

算法----Nim 游戏

题目 你和你的朋友,两个人一起玩 Nim 游戏: 桌子上有一堆石头。 你们轮流进行自己的回合, 你作为先手 。 每一回合,轮到的人拿掉 1 - 3 块石头。 拿掉最后一块石头的人就是获胜者。 假设你们每一步都是最优解。请编写一个函数&a…

华为OD机试真题 Python 实现【字符串重新排序】【2023Q1 100分】,附详细解题思路

目录 一、题目描述二、输入描述三、输出描述四、解题思路五、Python算法源码六、效果展示1、输入2、输出 一、题目描述 给定一个字串s,s包含以空格分隔的若干个单词,请对s进行如下处理后输出: 1、单词内部调整 对每个单词字母重新按字典序…

数据库之表的创建及数据类型

目录 创建表 简单语法: 固定格式: 案例 数据类型 文本类型 文本型 字符串型 二进制文本 枚举型 集合型 数字类型 整数型 浮点型 Date类型 DATE()日期 DATETIME() 日期和时间的组合 TIMESTAMP() 时间戳 TIME() 时间 YEAR() 2 位或 4 位…

Vue组件库Element-常见组件-表格

对于Element组件的使用,最主要的就是明确自己想要达到的效果,从官网中将对应代码复制粘贴即可,最重要的是要读懂不同组件官网中提供的文档,以便实现自己想要的效果 常见组件-表格 Table:表格:用于展示多条…

AE脚本适应底栏边框文字标题动画 Box It v1.0使用教程

这个AE脚本Box It主要是用于快速创建复杂的动态文本框,非常适合下第三标题、标签、聊天气泡、多个文本框等。 它的主要特点有: 1. 简单易用,无需键入任何代码,通过简单的拖放和调整参数即可创建动态文本框 2. 包含多种预设选项,如简单、标准、粗体、标签、聊天气泡等,可以直接使…

多语言跨境电商系统开发,支持一键铺货,商品采集

随着全球贸易的不断发展,跨境电商成为了一个日趋热门的领域。作为一种全新的商业模式,跨境电商为消费者提供了更加便捷、高效、多样化的购物体验。然而,要实现跨境电商的顺利发展,必须依靠先进的技术手段。 跨境电商系统是实现跨…

Stable Diffusion WebUI 集成 LoRA模型,给自己做一张壁纸 Ubuntu22.04 rtx2060 6G

LoRA概念 LoRA的全称是LoRA: Low-Rank Adaptation of Large Language Models,可以理解为stable diffusion(SD)模型的一种插件,和hyper-network,controlNet一样,都是在不修改SD模型的前提下,利用少量数据训…

java web介绍

Web Java 技术栈 B/S 架构:Browser/Server,浏览器/服务器架构模式,它的特点是,客户端只需要浏览器,应用程序的逻辑和数据都存储在服务器端。浏览器只需要请求服务器,获取 Wb 资源,服务器把 Wb 资源发送给…

如何做好数仓 BI 项目的规划与建设?

BI项目规划和实施方案是保障BI项目顺利落地的首要环节。好的项目规划能有效提升开发人效,缩短项目周期,实现项目预期目标。 构建运营数据的可视化是为企业运营管控提供有效的支撑,成为企业在大数据时代智慧运营的必然路径。 在实际BI项目的…

古典密码之一的Playfair密码的实现

目录 一.古典密码 二.Playfair密码的介绍 三.Playfair密码的实现 1.密钥转大写和密钥去重 2.输入密钥并打印密钥表 2.输入明文并加密为密文 3.输入密文并解密为明文 四.全部代码 一.古典密码 最早的加密方法可以追溯到公元前4000年左右的古代文明时期。埃及人、古希腊…

python解析考试题库数据

应单位要求需要参加某个考试,但考试需要从手机端登陆学习,1000多道题需要挨个刷一遍太过于麻烦,萌生了把题目和答案全部扒下来的想法,再用python做数据的清洗和梳理,最后整合出来所有的考试题库信息。 首先打开浏览器…

Socks5代理是什么?有哪些优势?

在线隐私和⽹络领域,Socks5代理已经成为⼀种受欢迎且强⼤的⼯具。但是Socks5是什么呢?使⽤Socks代理有什么优势?在本⽂中,Oxylabs和你一起探讨这些问题,揭⽰Socks5代理的世界。 深⼊了解Socks5代理 socks&#xff08…

计算机网络 day3 广播风暴 - VLAN - Trunk

目录 广播风暴: 1.什么是广播风暴? 2.危害: 3.防范 STP生成树协议:(72条消息) 生成树协议 — STP_生成树协议步骤_一下子就醒了的博客-CSDN博客 VLAN: VLAN是什么? VLAN起到的作用: 广…

软件测试常见基础知识面试题

一、测试基础理论 1.1 什么是软件测试? 为了发现程序中的错误而执行程序的过程 1.2 软件测试流程 1)需求调查 2)制定初步的项目计划 3)测试准备 4)测试设计 5)测试实施 6)测试评估 1.3 软件…