目录

  • 一.拟合所需函数
    • (1)polyfit 函数
    • (2)polyval 函数
  • 二.举例(预测人口)
    • (1)问题数据
    • (2)求解
    • (3)完整代码
    • (4)注意点

一.拟合所需函数

这里我们主要考虑用多项式函数去进行曲线拟合

(1)polyfit 函数

功能: 求得结果为最小二乘法拟合的多项式系数。

格式:

p = polyfit(X,Y,n);

X,Y为进行拟合的样本数据,类型为矩阵。n为拟合的多项式次数,看散点图判断拟合次数。p为拟合后返回的多项式系数矩阵。

[p,s] = polyfit(X,Y,n);

返回两个结果,s为采样点的误差数据

[p,s,mu] = polyfit(X,Y,n);

返回三个结果,mu是一个二元向量,其中mu(1)是X的平均值即mean(X), mu(2)是X的标准差即std(X)。

(2)polyval 函数

功能: 求得在上面函数所得的p系数下,某一点预测的函数值。

格式:

polyval(p,15);

返回值为X=15时的函数值。

二.举例(预测人口)

(1)问题数据

某地区2010-2020人口数据:

x 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020
y 3.9 5.3 7.2 9.6 12.9 17.1 23.2 31.4 38.6 50.2 63.0

(2)求解

我们先分步求解,后面有完整代码

【1】先查看散点图趋势

x=2010:1:2020;
y=[3.9,5.3,7.2,9.6,12.9,17.1,23.2,31.4,38.6, 50.2,63.0];
plot(x,y,'*');


【2】进行多项式函数拟合(这里可以尝试不同的次数择优选取)

p = polyfit(x,y,2);
plot(x,y,'*',x,polyval(p,x))

可以看到结果基本吻合

【3】可以继续进行预测未来的人口

polyval(p,2021)
ans =74.4776

(3)完整代码

x=2010:1:2020;
y=[3.9,5.3,7.2,9.6,12.9,17.1,23.2,31.4,38.6, 50.2,63.0];
p = polyfit(x,y,2);
plot(x,y,'*',x,polyval(p,x))
polyval(p,2021);

(4)注意点

我们在选取数据时,并不是数据越多越好。

在选取数据时,同时要考虑到实际情况,就比如说对人口预测,可能前10年发生了天灾人祸使得前十年的数据严重不符,那么这一阶段的数据就可以舍弃。

曲线拟合作用

预测趋势

总结规律

估算数据

曲线拟合(多项式函数+MATLAB实例)相关推荐

  1. MATLAB多项式函数拟合和曲线拟合

    MATLAB软件提供了基本的曲线拟合函数的命令. 多项式函数拟合:a=polyfit(xdata,ydata,n) 其中n表示多项式的最高阶数,xdata,ydata为将要拟合的数据,它是用数组的方式 ...

  2. 多项式在matlab中的应用,matlab的应用-多项式函数及多项式拟合

    matlab的应用-多项式函数及多项式拟合 Matlab 的应用- 多项式函数及多项式拟合 本节将向大家简要介绍 matlab 在多项式处理方面的应用. 多项式函数主要有: roots 求多项式的根 ...

  3. matlab 画非线性曲线,MATLAB实例:非线性曲线拟合

    MATLAB实例:非线性曲线拟合 用最小二乘法拟合非线性曲线,给出两种方法:(1)指定非线性函数,(2)用傅里叶函数拟合曲线 1. MATLAB程序 clear clc xdata=[0.1732;0 ...

  4. matlab全域基函数,多项式函数插值:全域多项式插值(一)单项式基插值、拉格朗日插值、牛顿插值 [MATLAB]...

    全域多项式插值指的是在整个插值区域内形成一个多项式函数作为插值函数.关于多项式插值的基本知识,见"计算基本理论". 在单项式基插值和牛顿插值形成的表达式中,求该表达式在某一点处的值 ...

  5. matlab画图入门篇--各种基本图形绘制的函数与实例【转载】

    MATLAB画图入门篇--各种基本图形绘制的函数与实例 一. 二维图形(Two dimensional plotting) 1. 基本绘图函数(Basic plotting function):Plo ...

  6. 【啃书】《智能优化算法及其MATLAB实例》例6.1基本粒子群算法进行sphere函数寻优

    文章目录 问题描述 仿真过程 matlab源码 问题描述 仿真过程 基本粒子群算法的进化进程如下 matlab源码 以下给出的粒子群算法代码使用了给定惯性权重 %该脚本要命名为func1.m %%%% ...

  7. 多项式函数曲线拟合——最小二乘法

    多项式函数拟合的任务是假设给定数据由M次多项式函数生成,选择最有可能产生这些数据的M次多项式函数,即在M次多项式函数中选择一个对已知数据以及未知数据都有很好预测能力的函数. 最小二乘法(又称最小平方法 ...

  8. matlab曲线拟合的应用,MATLAB软件在曲线拟合中的应用

    2007 年第 3 期 福 建 电 脑 MATLAB软件在曲线拟合中的应用 冯元珍 1, 屠小明 2, 罗建平 2 (1. 南京人口管理干部学院基础部 江苏 南京 210042 2. 南京医科大学数学 ...

  9. matlab 多项式提取,matlab提取多项式系数

    要求一高阶多项式的根往 往须借助数值方法,所 幸MATLAB已将这些数值方法写成一函数 roots(p),我们只要输入多项式的各阶系数 (以 p 代表)即可求解到对应的根 >...... 如果被 ...

  10. 支持向量机(SVM)MATLAB 实例讲解,及选择训练方式使误差率尽可能减为0

    今天看了有关支持向量机(Support vector machine,简称SVM )用来分类的内容.通过学习算法,SVM可以自动找出那些对分类有用有较好区分能力的支持向量,由此构造出的分类器可以最大化 ...

最新文章

  1. 学精算的计算机知识,精算学专业学什么 附学习科目和课程
  2. pycharm 查看代码行数_【收藏】提高PyCharm效率的10个小技巧
  3. getopt的用法与optarg
  4. 【译】Understanding Universal Composition Framework and Sprites State Channels
  5. Redhat的Linux产品版本AS/ES/WS的联系与区别
  6. c++输出方块_【Blender】方块波浪动画音乐效果
  7. 技术生态两手抓,打造面向未来的企业级领先数据库
  8. 蓝桥杯 ALGO-91 算法训练 Anagrams问题
  9. Mysql之统计数据
  10. 微信小程序 java家庭个人收支理财记账本springboot
  11. linux内核 can总线,基于Linux的PC104总线与CAN总线通信设计
  12. 朗文3000词汇表带音标_朗文少儿英语2A-Unit3知识归纳(单词含音标版
  13. 浏览器扫码打开Android/iOS App
  14. Linux内核访问用户空间文件 filp_open/vfs_read/vfs_write/set_fs/get_fs
  15. PyQt5蟒蛇计算器V2
  16. 恶意软件的沙盒规避技术
  17. Android 基于4G模块 GPS定位
  18. opencv,图像处理,rgb转换为hsv空间
  19. 【QT上位机设计——串口收发和波形显示】
  20. RedHatLinux6.5下安装无线网卡驱动

热门文章

  1. 操作系统——内存交换技术
  2. Collection、List、泛型、数据结构
  3. python电路仿真软件_Arduino仿真软件64位Virtual Breadboard下载 v4.21
  4. android 多媒体封装格式详解---MKV
  5. 【IIS问题】——默认网站localhost无法打开,错误类型404
  6. Android开发方向,我们如何选择?
  7. 陈强老师公开课笔记3——中介效应的Stata操作
  8. SSD模型物体检测(水下生物识别)
  9. 上海数学高考 计算机,编程已进入高考?别被广告文洗脑,编程并未纳入上海高考科目!...
  10. Unicode 字符编码表|汉字Unicode编码的区间为:0x4E00→0x9FA5(转)