最小二乘法-直线拟合-C语言

news/2024/12/25 16:23:28/文章来源:https://www.cnblogs.com/chl052529/p/18630770

‌最小二乘法是一种数学统计方法,它通过最小化误差的平方和来寻找数据的最佳函数匹配‌。具体来说,它用于解决曲线拟合问题,即找到一个函数,使得该函数在给定数据点上的误差(通常是垂直距离)的平方和最小。这种方法广泛应用于数据分析和机器学习等领域,特别是在处理线性回归问题时,最小二乘法是一种非常有效且常用的方法。

 

 

假设已知有N个点,设这条直线方程为:  y = a·x + b

其中,a和b的计算公式如下:

推导过程见:最小二乘法公式_百度百科 (baidu.com)

 

算法代码如下:

//-------------------------------------------------------------
//功能 : 最小二乘法直线拟合 y = a·x + b, 计算系数a 和 b
//参数 : x -- 横坐标的数组
//      y -- 纵坐标的数组
//      num 是数组包含的元素个数,x[]和y[]的元素个数必须相等
//      a,b 都是返回值
//返回 : 
//-------------------------------------------------------------
void leastSquareLinearFit(float x[], float y[], int num, float *a, float *b)
{float sum_x2 = 0.0;float sum_y  = 0.0;float sum_x  = 0.0;float sum_xy = 0.0;for (int i = 0; i < num; i++){sum_x2 += x[i] * x[i];sum_y  += y[i];sum_x  += x[i];sum_xy += x[i] * y[i];}*a = (num * sum_xy - sum_x * sum_y) / (num * sum_x2 - sum_x * sum_x);*b = (sum_x2 * sum_y - sum_x * sum_xy) / (num * sum_x2 - sum_x * sum_x);
}                

 

参考博文:最小二乘法-直线拟合-C代码实现_用最小二乘法拟合直线方程-CSDN博客

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

300+ Excel可视化图表模板:13种分类助你轻松制作专业图表

正文: 在职场中,专业的数据可视化能力是一项非常重要的技能。而使用高质量的Excel图表模板,可以让你的数据分析和展示工作更加高效!今天为大家推荐一份300+ Excel可视化图表模板合集,涵盖13种图表分类,适用于多种办公场景。 无论是数据分析、项目管理,还是日常汇报,这些…

protected修饰符讲解、java中继承的特点-java se进阶 day01

1.protected权限修饰符的介绍 之前在说权限修饰符时候,没有细说protected,今天,我们就来聊聊protected 如图,protected修饰符中,“不同包的子类”是我们要理解的我们在不同的包下创建一个Fu类和一个Zi类,然后在Zi类的同一个包中创建一个test类Zi类继承Fu类,然后test不继…

Spring Boot和Spring Cloud

1.Srping Boot SpringBoot是一款基于JAVA的开源框架。目的是为了简化Spring应用搭建和开发流程。是目前比较流行,大中小型企业常用的框架。 SpringBoot核心原理是自动装配(自动配置)。 在这之前,开发一个JavaWeb,Spring等项目要进行很多配置,使用了SpringBoot就不用在过多…

『玩转Streamlit』--上传下载文件

在Web应用中,文件的上传下载是交互中不可缺少的功能。 因为在业务功能中,一般不会只有文字的交互,资料或图片的获取和分发是很常见的需求。 比如,文件上传可让用户向服务器提交数据,如上传图片分享生活、提交文档用于工作协作等,丰富应用功能。 而文件下载则使用户能获取…

renben-openstack-制作镜像操作

openstack镜像制作(用虚拟机192.168.124.6) 制作centos7镜像,OpenStack支持qcow2 ios等多种镜像规格 (1)创建镜像的硬盘 (2)删除镜像的唯一性,封装压缩 在找一个虚拟机,专门用来做镜像,需要开启虚拟化yum install -y libvirt qemu-kvm libguestfs-toolsqemu-img crea…

iPhone获取设备UDID,安装测试包

一、Safari访问获取udid网址 使用 iOS 设备的 Safari 浏览器打开 http://www.betaqr.com.cn/udid 二、安装证书 打开链接后,点击“获取UDID”三、手机配置 打开“设置” -> “通用”四、安装证书 点开证书之后五、获取UDID 安装证书之后,切换到Safari,长按出现的UDID复制…

Cursor - AI代码编辑器的使用指南

Cursor 是一个强大的 AI 代码编辑器,提供了多种功能来提升您的编程效率。本文将详细介绍如何使用 Cursor 及其主要功能,帮助您更好地利用这个工具。 1. 自动完成功能 Cursor 包含强大的自动完成功能,通过 Tab 键补全代码,可预测您的下一次编辑。启用后,它始终处于打开状态…

PbootCMS 模板常用的if条件判断语句

问题:PbootCMS模板常用的if条件判断语句。 答案:导航高亮:html{pboot:if([nav:scode]=={sort:tcode})}class="active"{/pboot:if}判断有无子菜单:html{pboot:if([nav:soncount]>0)}...{/pboot:if}二级栏目循环判断:html{pboot:nav} <li><a href=&qu…

秸秆焚烧智能监测摄像机

秸秆焚烧智能监测摄像机可以通过设置监测区域和参数,实现对秸秆焚烧情况的自动监测和报警。一旦系统检测到异常情况,比如秸秆燃烧量过大或燃烧产生大量烟尘,会立即发送警报通知相关部门,以便及时采取控制措施。秸秆焚烧智能监测摄像机可以广泛应用于农村地区的秸秆焚烧场所…

中小企业 CRM 解决方案排名:性价比之选

在如今竞争白热化的商业环境中,应用CRM系统(客户关系管理系统)可以帮助中小企业降本增效。有效的客户管理能帮助企业精准把握市场脉搏,提升客户满意度,减少客户流失,为企业的长远发展提供稳定动力。 本文从中小企业对CRM的具体需求出发,介绍4家适合中小企业的CRM供应商,…

在CAD文件中存储扩展数据

基础知识:根据CAD官方的资料看来,Database作为一个CAD文件数据库的根对象,其包含10个子对象:九大符号表(SymbolTable)和命名对象词典(NamedObjectsDictionary)。 这10个子对象属于整个数据库内的最高层级,直属于Database。除这10个子对象以外,所有DBObject对象都必须…

人员聚集监测识别摄像机

人员聚集监测识别摄像机可以通过高清晰度的摄像头和先进的人脸识别技术,准确地识别出人群中的个体,并记录下他们的行踪和行为。在人员密集的场所,如商场、车站、体育场馆等,这种摄像机能够帮助安保人员更好地掌握人员活动的情况,及时发现异常情况,有效应对突发事件。除了…