Matlab常用编程示例
文章平均质量分 63
freexyn
简约自由之风格(公号同名)
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
算法代码速成8:非线性最小二乘问题编程示例:人口预测
本文介绍了非线性最小二乘问题的求解方法,重点讲解了马尔萨斯人口增长模型的拟合案例。通过1950-2000年的人口数据,建立指数函数f(t)=p0e^rt进行非线性拟合,并预测2000-2020年人口变化。使用MATLAB的lsqcurvefit函数求解参数,得到p0=2.5794、r=0.0176,拟合优度R²=0.9947,均方根误差RMSE=0.0916,表明模型拟合效果良好。文章还给出了完整的MATLAB实现代码和可视化方法,并推荐了相关学习资源。原创 2025-10-18 17:31:57 · 559 阅读 · 0 评论 -
算法代码专题7:多元线性最小二乘问题应用实例:房价预测
本文基于波士顿房价数据集,通过多元线性回归模型演示最小二乘法在多因素预测中的应用。选取面积、房间数和房龄三个特征变量,建立房价预测模型。MATLAB实现结果显示回归方程为:房价=127.96+2.15面积+21.99房间数-1.74*房龄,其中房间数影响最显著。模型决定系数R²=0.9497,表明模型具有较强解释力。通过可视化展示了实际房价与预测房价的良好拟合效果,验证了多元线性回归在房价预测中的有效性。原创 2025-10-06 10:30:03 · 855 阅读 · 0 评论 -
算法代码讲座6:最小二乘法理论原理、典型案例与MATLAB实现
最小二乘法是一种通过最小化误差平方和来拟合数据的数学优化方法。核心流程包括:选择模型、构建目标函数、优化求解参数。线性最小二乘问题有解析解β=(XᵀX)⁻¹XᵀY,可解释为在列空间中寻找正交投影。文中以弹簧实验为例,通过Matlab实现拟合,得到k=0.5208N/cm,b=0.2cm,R²=0.9987显示优异拟合效果。该方法数学基础坚实、实现简单,可扩展至非线性问题,是数据分析的基础工具。原创 2025-09-20 17:48:06 · 886 阅读 · 0 评论 -
Matlab编程示例24:freexyn在b站的读取手写体mnist数据集的matlab代码
简单来说(详细来说,看视频66.35),源文件中前面几行数据是简单介绍的信息,在数据提取时应该跳过,后面的数据按照一定的规律,循环表达图片或者标签的数据,在数据读取的时候,要按照规律一组一组的提取数据,并按照预期的图片或标签数据结构进行重构,得到最终直接表达图片或者标签的数据。简单来说(详细来说,看视频66.35),这是一种类似二进制格式的数据,为什么使用这种格式,我想可能是为了压缩数据大小,方便下载和传输吧,如果直接使用图片存储格式,7万张图片的压缩包有多大,大家自己考虑下哈。原创 2024-10-05 21:09:13 · 1163 阅读 · 0 评论 -
Matlab算法编程示例4:数值解法求解常微分方程的代码实例
本文介绍了如何在MATLAB中使用ode45函数求解常微分方程。ode45是基于龙格-库塔法的数值求解器。示例程序演示了求解dy/dt=-2ty的过程:首先定义微分方程函数odefunc,然后设置初始条件y0=1和时间范围tspan=[0,1],调用ode45求解后绘制结果曲线。程序可修改为其他微分方程和初始条件。该方法是MATLAB中求解常微分方程的常用方法。原创 2025-08-03 13:19:17 · 281 阅读 · 0 评论 -
Matlab编程示例3:Matlab求二次积分的编程示例
中,首先声明了符号变量x和y,然后定义了要积分的函数f。接下来,使用int函数计算二次积分,其中第一个参数是要积分的函数,后面的参数是积分变量和积分区间。最后,使用disp函数显示结果。根据需要修改函数f和积分区间,以适应具体的问题。这个示例是在二维空间中进行二次积分,也可以进行一维或三维的积分,只需相应地修改变量和函数的定义即可。,可以使用符号计算工具箱(Symbolic Math Toolbox)中的int函数来求解二次积分。% 定义要积分的函数。原创 2023-08-13 22:05:32 · 950 阅读 · 0 评论 -
Matlab编程示例2:查找一组数据中不重复数据的编程示例 如何查找一组数据中的唯一值,如何提出一组数据中的重复值
在 MATLAB 中,可以使用 unique 函数来识别一列中的相同数据。unique 函数返回输入数组中的唯一值,并按升序排列。如果仅关心相同数据的识别,你可以使用该函数的两个输出参数。程序示例如下原创 2023-06-25 21:36:54 · 619 阅读 · 0 评论 -
Matlab求解一元高次方程的编程示例
使用Matlab求解一元高次方程时,可以使用roots函数。roots函数接受一个多项式的系数向量作为输入,然后返回方程的根。以求解x^2 - 3x + 2 = 0方程为例,下是一个求解一元高次方程的示例代码原创 2023-06-18 22:37:04 · 1702 阅读 · 0 评论 -
Matlab自学笔记:句柄、函数句柄、图像句柄(概念、用法、原理和区别)
句柄作为一种变量,它的特殊性在于,它指向的不是一个简单具体的值,而是一个结构体,这个结构体包含了很多可以读写的分支数据,一般称为属性或者方法,例如图窗类的句柄;函数句柄,它虽然也称为句柄,但用法上,基本不太使用他的属性(它好像也没有什么属性),而是指向函数表达式本身。...原创 2022-08-15 15:10:16 · 3501 阅读 · 2 评论 -
Matlab自学笔记三:创建脚本、M文件、运行脚本、注释、语法高亮、编程好习惯
脚本文件是包含一系列的命令和函数的程序文件,扩展名是.m,所以一般称为m文件,也简称脚本;它是Matlab里普遍的编程方式。原创 2022-09-19 22:35:44 · 10057 阅读 · 0 评论 -
Matlab自学笔记四:调用函数基本方法、传递参数、函数工作区、命令语法、调用匿名函数
[out1,out2]=function(input1,input2)说明,调用时,把输入参数括在小括号内,有多个输入参数时,用逗号分隔;有多个输出参数时,放入中括号内,用逗号分隔,如果不指定输入变量,则Matlab使用默认变量ans作为输入变量;函数工作区,是函数运行时产生的数据和变量的存储区;原创 2022-09-22 21:27:05 · 7302 阅读 · 0 评论 -
Matlab答疑:一个关于符号表达式写法的简单问题
sym函数是声明符号变量的,而创建符号表达式直接写表达式即可,有些同学一眼看到“出错 sym…”,立刻手足无措,以为sym函数出了问题,于是从这方面入手检查纠错,显然是非常错误的做法,大家必须明白,Matlab自带的函数是不会出错的,如果出错了,原因只有一个:你的用法错了。原创 2022-10-17 21:30:36 · 2334 阅读 · 1 评论 -
Matlab答疑五:使用微分定义求解微分方程的数值解
解微分方程 dydt=sin(y)+t,其中t=0时y=0,并绘图。说明,一般对dydt的求解方法为:y(t+dt)=y(t)+dydt(t)*dt,除了题目给出方法:使用定义求解;还可以使用dsolve符号运算,以及使用ode45的数值解法;使用三种方法求解,并对比结果。原创 2022-10-30 14:46:03 · 1098 阅读 · 0 评论 -
Matlab自学笔记十:逻辑型数据、逻辑运算、逻辑变量的创建、应用、真值表、常用函数、程序示例
逻辑型(logical)数据是用数字1和0分别表示真(true)或假(false)的状态;Matlab中一些运算会返回逻辑值,表示一个条件是否被满足,可以使用这些逻辑值来索引数组或执行条件代码,例如IF条件语句的用法;在Matlab中,把数值型矩阵转换成逻辑型矩阵时,数值0为假,非0数值为真;寻找并提取变量a=[0 1 2 -1]中所有的偶数;判断是否全为真all;判断是否存在逻辑真any原创 2022-11-27 21:20:39 · 2164 阅读 · 0 评论 -
Matlab自学笔记十三 数据类型:整型,创建方法、取值范围、整型运算、常用函数、程序示例
Matlab创建和使用变量,不需提前声明,默认使用的浮点类型数据,基本上做各种常规运算和编程都是没有多大问题的;这里我们先从最基本的数值型:整型,Matlab支持整数数据的1个,2个,4个和8个字节的存储,再分为有符号和无符号,总共8个整型类别,测试整型数据的取值范围最大值和最小值分别使用intmax和intmin函数,整型数据似乎用的比较少,但是对于一些特定应用场景,例如图片,使用imread把图像数据读取到Matlab中,表达数据的格式就是整型数据,图像数据使用像素点阵表达,使用整型数据可以节省内存。原创 2022-12-18 14:45:48 · 1668 阅读 · 0 评论 -
Matlab答疑十八:绘制surf曲面图首先建立网格数据的方法
曲线图,在Matlab里的绘图函数是plot3,用法是输入三个维度的坐标数据(x,y,z)即可;注意,这里的三维坐标数据的格式必须满足:每个变量(x、y、z)都是列向量;在Matlab里,曲面图使用函数surf,用法是输入三个维度的坐标数据(x,y,z),与上面有所差别的是,这里的三维坐标数据的格式必须满足:每个变量(x、y、z)必须是矩阵,也就是建立好的网格数据点;原创 2023-01-02 13:51:20 · 2087 阅读 · 2 评论 -
Matlab答疑六:随着温度(应力、热量)变化,颜色也相应变化的图,怎么画?就像下面这种图
一组数据如何与图像的颜色联系起来,这样,图像的颜色才能随着数据的变化而相应变化;温度数据t,及其对应的坐标点数据x和y,如果没有坐标点数据,那么可以使用温度数据t的自然位置索引代替;简言之,对于本题目,可以使用曲面绘图函数surf,并通过该函数的第四个参数设置颜色数据原创 2023-01-10 21:41:53 · 564 阅读 · 0 评论 -
Matlab答疑篇二十:定义的function使用工作区变量a时为什么报错?这是一个典型的参数传递问题
在Matlab中,工作区的变量,一般是在命令行窗口或者脚本文件中创建出来的,此外,还存在一种程序代码的组织形式,叫做函数文件,必须强调,函数工作区和基础工作区是不相通的,也就是说,两者的变量不能相互直接使用,相互使用的方法是:参数传递。方法是:在命令行窗口或者脚本环境中,调用这个函数进行运算,生成的输出参数就在基础工作区,相反,如果需要把基础工作区的变量传递给函数原创 2023-02-12 10:55:50 · 3106 阅读 · 1 评论 -
自学笔记十五:详谈Matlab中的Inf和NaN是什么鬼?
众所周知,数学上表达无穷大使用符号“∞”,在Matlab中,用特殊字符“inf”表示无穷大,比如零除和溢出等这样的运算会产生无穷大,这导致结果太大而不能用传统的浮点值表示;用特殊字符“NaN”表示既不是实数也不是复数的“非数字”的值,例如,当把Excel文件中的数据读取到Matlab中时,若只读取数值型数据,那么数据中的缺失值自动使用NaN来表达;原创 2023-02-05 15:46:08 · 7169 阅读 · 0 评论 -
Matlab自学笔记十六:如何设置数值显示格式、小数的显示位数
Matlab命令行窗口中的数值的显示格式,数值格式仅影响数字显示在命令行窗口输出中的方式,而不影响Matlab计算或保存它们的方式,使用函数format指定的显示格式仅应用于当前 Matlab会话,若Matlab关闭后重新打开,将恢复默认设置;当然,可以通过修改“预设”,改变Matlab显示数据的默认方式,但一般不建议这样做,平常的编程应用中,通过format函数临时修改数据的显示格式,或者小数的显示位数原创 2023-04-09 21:11:35 · 4253 阅读 · 1 评论 -
Matlab自学笔记十七:字符型数组、创建、判断和索引方法,集合运算、与数值型转换方法、运算、程序示例
字符型(Characters)数据一般用来存储和处理文本数据,字符数组是一个字符序列,字符向量把字符存储为1乘n的向量,是常用形式,在Matlab中有两种表示文本的方法:字符型和字符串型,本文先介绍字符型数组的创建、连接、转换和运算等内容;创建字符型数组使用一对单引号 '',判断一个变量是否为字符型数据使用函数ischar;水平连接使用strcat函数,竖直连接使用strvcat函数原创 2023-04-16 22:31:12 · 1242 阅读 · 0 评论 -
Matlab自学笔记十八:字符数组中字母、空格、大写、小写、数字、标点符号的识别和处理,删除尾随空格
判断字符数据中的字母和空格,把字符串中的空格剔除删掉,判断字符串中的字母、小写字母、大小字母,判断字符中的数字、标点符号、空格,空字符的处理:调整位置、剔除、删除尾随空格原创 2023-04-23 21:15:05 · 2439 阅读 · 0 评论 -
Matlab自学笔记十九:多类型数据混合连接和运算的结果类型
众所周知,Matlab有很多数据类型,包括浮点型、整型、字符型、逻辑型等;现在的问题是,Matlab多类型进行运算和连接后,结果是什么类型呢?原创 2023-05-14 21:40:27 · 351 阅读 · 0 评论 -
Matlab自学笔记二十:字符串型数据:创建、比较、索引和运算
字符串数组是由多个字符串作为元素组成的数组,从Matlab2016b开始,可以使用字符串类型数据,从2017a开始,可以使用双引号创建字符串;s(2,3)="x" %扩展为2行3列的数组,并将第2行第3列元素赋值为''x''s=["123","abcd";"自由未知数","%$%#"] %创建字符串数组。"自由未知数","%$%#"]"ab"] %字符串纵向连接-变为字符串数组。["123","ab"] %字符串连接-变为字符串数组。原创 2023-05-21 21:02:31 · 1052 阅读 · 0 评论
分享