8.MATLAB数据分析
概述:


clc;
clear all;
p1=[ ];
y=poly2sym(p1) %由向量创建多项式
disp(y) %显示多项式
1 多项式的求值与求根

clc;
clear all;
p=[ - -]; %多项式的系数向量
x=:;
y=polyval(p,x) %多项式在x处的值
clc;
clear all;
x=[ ; ];
p=[ ];
y1=polyvalm(p,x) %采用polyvalm( )函数,以矩阵为计算单位 x=[ ; ];
p=[ ];
y2=polyval(p,x) %采用polyval( )函数,以矩阵的元素为计算单位
clc;
clear all;
p=[ - -];
x1=roots(p) %对多项式p求根 x2=[ ];
y=poly(x2); %求以x2为根的多项式
y=poly2sym(y)
2 多项式乘法和除法

clc;
clear all;
p1=[ ]; %缺少的幂次用0补齐
p2=[ ]; %转成表达式
y1=poly2sym(p1)
y2=poly2sym(p2) p3=conv(p1,p2); %多项式相乘
y=poly2sym(p3) %定义一个变量
syms x
p1=sym2poly(*x^+*x^+)
p2=sym2poly(*x^+*x+)
p3=conv(p1,p2); %多项式相乘
y=poly2sym(p3)
3 多项式的导数和积分

clc;
clear all;
p1=[ ];
p2=[ ];
y1=polyder(p1);%对多项式p1求导
y1=poly2sym(y1) y2=polyder(p1,p2); %对多项式p1和p2的乘积求导
y2=poly2sym(y2) [q,d]=polyder(p1,p2);%对多项式p1除以p2的商求导
q=poly2sym(q)
d=poly2sym(d)
clc;
clear all;
p1=[ ];
y1=polyint(p1,); %对多项式p1进行积分,常数项为3
y1=poly2sym(y1)
y2=polyint(p1); %对多项式p1进行积分,常数项为0
y2=poly2sym(y2)
4 多项式展开

clc;
clear all;
b=[ - - -];%分子多项式
a=poly([;;]);%分母多项式
[r,p,k]=residue(b,a) %进行多项式b/a展开
[b1,a1]=residue(r,p,k);%通过余数、极点和常数项来求多项式b1/a1
b1=poly2sym(b1)
a1=poly2sym(a1) b=[ - - -];%多项式a有三重根
a=poly([;;]);%分母多项式
[r,p,k]=residue(b,a) %进行多项式b/a展开
5 多项式拟合

clc;
clear all;
x=[0.2 0.3 0.5 0.6 0.8 0.9 1.2 1.3 1.5 1.8];
y=[ ];
p5=polyfit(x,y,);%5阶多项式拟合
%在x处求值
y5=polyval(p5,x);
p5=vpa(poly2sym(p5),)%显示5阶多项式 p9=polyfit(x,y,);%9阶多项式拟合
%求值
y9=polyval(p9,x); figure;%画图显示
plot(x,y,'bo');
hold on;
plot(x,y5,'r:');
plot(x,y9,'g--');
legend('原始数据','5阶多项式拟合','9阶多项式拟合');
xlabel('x');
ylabel('y');
6 曲线拟合图形用户接口

7 一维插值

clc;
clear all;
x=:0.2:;
y=(x.^-*x+).*exp(-*x).*sin(x);
xi=:0.03:; %要插值的数据
yi_nearest=interp1(x,y,xi,'nearest'); %临近点插值
yi_linear=interp1(x,y,xi); %默认为线性插值
yi_spine=interp1(x,y,xi,'spine'); %三次样条插值
yi_pchip=interp1(x,y,xi,'pchip'); %分段三次Hermite插值
yi_v5cubic=interp1(x,y,xi,'v5cubic'); %MATLAB5中三次多项式插值
figure; %画图显示
hold on;
subplot();
plot(x,y,'ro');
title('已知数据点');
subplot();
plot(x,y,'ro',xi,yi_nearest,'b-');
title('临近点插值');
subplot();
plot(x,y,'ro',xi,yi_linear,'b-');
title('线性插值');
subplot();
plot(x,y,'ro',xi,yi_spine,'b-');
title('三次样条插值');
subplot();
plot(x,y,'ro',xi,yi_pchip,'b-');
title('分段三次Hermite插值');
subplot();
plot(x,y,'ro',xi,yi_v5cubic,'b-');
title('MATLAB5中三次多项式插值');
clc;
clear all;
x=:1.1:;
y=sin(x);
n=*length(x); %增采样1倍
yi=interpft(y,n);%采用一维快速傅立叶插值
xi=:0.55:8.3;%要插值的数据
figure;%画图显示
hold on;
plot(x,y,'ro',xi,yi,'b-');
legend('原始数据','插值后结果');
8 二维插值

clc;
clear all;
[x,y]=meshgrid(-:0.8:); %原始数据
z=peaks(x,y);
[xi,yi]=meshgrid(-:0.2:); %插值数据
zi_nearest=interp2(x,y,z,xi,yi,'nearest'); %临近点插值
zi_linear=interp2(x,y,z,xi,yi); %系统默认为线性插值
zi_spline=interp2(x,y,z,xi,yi,'spline'); %三次样条插值
zi_cubic=interp2(x,y,z,xi,yi,'cubic'); %三次多项式插值
figure; %数据显示
hold on;
subplot();
surf(x,y,z);
title('原始数据');
subplot();
surf(xi,yi,zi_nearest);
title('临近点插值');
subplot();
surf(xi,yi,zi_linear);
title('线性插值');
subplot();
surf(xi,yi,zi_spline);
title('三次样条插值');
subplot();
surf(xi,yi,zi_cubic);
title('三次多项式插值');
9 样条插值

clc;
clear all;
x=:;%原始数据
y=sin(x);
xi=:.:;%插值数据
yi=spline(x,y,xi);%三次样条插值
pp=spline(x,y);%产生插值函数
y1=ppval(pp,xi); %结果相同y1=yi
y2=interp1(x,y,xi,'spline'); %结果相同y2=yi
figure;%画图显示
plot(x,y,'o',xi,yi);
legend('原始数据','三次样条插值');
10 高维插值

clc;
clear all;
[x,y,z,v]=flow();
[xi,yi,zi]=meshgrid(.:.:,-:.:,-:.:);
vi = interp3(x,y,z,v,xi,yi,zi); % vi为25**
slice(xi,yi,zi,vi,[ 9.5],,[- .]);
shading flat
11 函数的极限


clc;
clear all;
syms x;
f=(*x^-)/(*x^-*x+);
y=limit(f,x,)
clc;
clear all;
syms x;
f=x/(x-)-/(x^-);
y=limit(f,x,)
clc;
clear all;
syms x;
f=((x^x)^x);
y=limit(f,x,,'right')
8.MATLAB数据分析的更多相关文章
- 《MATLAB数据分析与挖掘实战》赠书活动
<MATLAB数据分析与挖掘实战>是泰迪科技在数据挖掘领域探索10余年经验总结与华南师大.韩山师院.广东工大.广技师 等高校资深讲师联合倾力打造的巅峰之作.全书以实践和实用为宗旨,深度 ...
- MATLAB学习笔记(六)——MATLAB数据分析与多项式计算
(一)数据处理统计 一.最大值和最小值 1.求向量的最大值和最小值 y=max(X); %返回向量X的最大值存入y,如果X中含有复数则按模最大的存入y [y,I]=max(X);%返回向量X的最大值存 ...
- MATLAB简单实现ID3
再看<MATLAB数据分析与挖掘实战>,简单总结下今天看到的经典的决策树算法——ID3. ID3:在决策树的各级节点上,使用信息增益的方法作为属性的选择标准,来帮助确定生成每个节点时所应采 ...
- MATLAB连接MySQL数据库
今天开始看<MATLAB数据分析与挖掘实战>,学习了下用MATLAB连接MySQL数据库,环境win7,32bit,MySQL5.7.12,MATLAB2013B 首先,从这里下载驱动的压 ...
- 史上最全的Matlab资源电子书教程和视频下载合集【超级推荐】
收藏吧,网上搜集的,费了老大劲了,推荐给有需要的人,^_^. MATLAB课件2007北京交通大学.zip 4.87 MB A Guide to MATLAB for Beginners an ...
- 数据质量、特征分析及一些MATLAB函数
MATLAB数据分析工具箱 MATLAB工具箱主要含有的类别有: 数学类.统计与优化类.信号处理与通信类.控制系统设计与分析类.图像处理类.测试与测量类.计算金融类.计算生物类.并行计算类.数据库访问 ...
- 顶尖大数据挖掘实战平台(TipDM-H8)产品白皮书
顶尖大数据挖掘实战平台 (TipDM-H8) 产 品 说 明 书 广州泰迪智能科技有限公司 版权所有 地址: 广州市经济技术开发区科学城232号 网址: http: ...
- 数据分析系统DIY3/3:本地64位WIN7+matlab 2012b訪问VMware CentOS7+MariaDB
数据分析系统DIY中要完毕的三个任务. 一.用VMware装64位CentOS.数据库服务端用CentOS自带的就好. 二.数据採集与预处理用Dev-C++编程解决. 三.用本地Win7 64上的MA ...
- 动态可视化 数据可视化之魅D3,Processing,pandas数据分析,科学计算包Numpy,可视化包Matplotlib,Matlab语言可视化的工作,Matlab没有指针和引用是个大问题
动态可视化 数据可视化之魅D3,Processing,pandas数据分析,科学计算包Numpy,可视化包Matplotlib,Matlab语言可视化的工作,Matlab没有指针和引用是个大问题 D3 ...
随机推荐
- window下安装git
- [Offer收割]编程练习赛41
比赛日程安排 #pragma comment(linker, "/STACK:102400000,102400000") #include<stdio.h> #incl ...
- 前端-JQ思维导图
看不清的朋友右键保存或者新窗口打开哦!喜欢我可以关注我,还有更多前端思维导图笔记
- mybatis 高级映射和spring整合之查询缓存(5)
mybatis 高级映射和spring整合之查询缓存(5) 2.0 查询缓存 2.0.1 什么是查询缓存 mybatis提供缓存,用于减轻数据压力,提高数据库性能. mybatis提供一级缓存和二级缓 ...
- [oracle] 递归追溯完整部门名称 函数
create or replace function fn_DeptWholeName2(objectid in number) return nvarchar2 is wholename nvarc ...
- Java入门第一季——从此投身Java??
找工作告一段落. 最后的工作呢,和java紧密相关,也是阴差阳错,不过都是软件开发,都好了,不过以后侧重点肯定是在java这边,php有机会还是一直学下去的,那么美的说~ Java开发第一季 一.简 ...
- C# model代码生成器
using System.Collections.Generic; using System.Text; public class Class1 { //传递 1.表名 2.列名 3.类型 publi ...
- 带你认识闻名遐迩的ZBrush
ZBrush®是一款数字雕刻和绘画软件,它以其强大的功能和直观的工作流程彻底改变了3D行业.ZBrush 4R8是目前最新版本,它秉持一贯的简洁界面风格,给如今的数字艺术工作者提供了世界领先的工具.它 ...
- Redmine 甘特图导出 PDF 和 PNG 中文乱码问题
Redmine使用了RMagick来处理图片,fpdf处理PDF,并在调用时设定了字体PDF中文字体 redmine 中关于PDF字体设置的代码 case pdf_encoding ...
- HDU1527 - 取石子游戏【威佐夫博弈】
有两堆石子,数量任意,可以不同.游戏开始由两个人轮流取石子.游戏规定,每次有两种不同的取法,一是可以在任意的一堆中取走任意多的石子:二是可以在两堆中同时取走相同数量的石子.最后把石子全部取完者为胜者. ...