第4讲matlab与excel文件的数据交换

上传人:今*** 文档编号:110172953 上传时间:2019-10-29 格式:PPT 页数:22 大小:432KB
返回 下载 相关 举报
第4讲matlab与excel文件的数据交换_第1页
第1页 / 共22页
第4讲matlab与excel文件的数据交换_第2页
第2页 / 共22页
第4讲matlab与excel文件的数据交换_第3页
第3页 / 共22页
第4讲matlab与excel文件的数据交换_第4页
第4页 / 共22页
第4讲matlab与excel文件的数据交换_第5页
第5页 / 共22页
点击查看更多>>
资源描述

《第4讲matlab与excel文件的数据交换》由会员分享,可在线阅读,更多相关《第4讲matlab与excel文件的数据交换(22页珍藏版)》请在金锄头文库上搜索。

1、第4讲 MATLAB与Excel文件的数据交换,数据交互函数,EXCEL-LINK 宏,交互实例,作业,数据的平滑处理,数据的标准化变换,1、获取文件信息 xlsfinfo 函数: typ, desc, fmt = xlsfinfo(filename) 输入参数: Filename:目标文件地址(若文件在 matlab 当前的工作目录中, Filename 为文件名,如果文件不在 matlab 当前的工作目录中, filename 为文件路径文件名,例如: E:other案例书籍abc.xls) 输出参数: Typ:目标文件类型 Desc:目标文件内部表名称( sheetname) Fmt:支

2、持目标文件的软件版本,2.1、读取数据 xlsread 函数 data,textdate= xlsread(filename) 输入参数: Filename:目标文件地址(若文件在 matlab 当前的工作目录中, Filename 为文件名, 如果文件不在matlab 当前的工作目录中, filename 为文件路径文件名) 输出参数: Data: 数值数据 Textdate: 文字数据,理学院 Arrow,2.2 data= xlsread(filename, sheet, range) 输入参数: Filename:目标文件地址(若文件在 matlab 当前的工作目录中, Filenam

3、e 为文件名,如果文件不在matlab 当前的工作目录中, filename 为文件路径文件名) Sheet:数据表名称,例如 excel 默认表名称 sheet1。 Range:数据所在位置,例如 A1, B13 等 输出参数: Data: 数值数据,理学院 Arrow,2.3 写入数据 xlswrite 函数 Matlab 往 excel 中写入数据的函数为 xlswrite xlswrite 函数语法 status, message = xlswrite (filename, M, sheet, range) 输入参数: Filename:目标文件地址(若文件在 matlab 当前的工作

4、目录中, Filename 为文件名,如果文件不在 matlab 当前的工作目录中, filename 为文件路径文件名); M: 写入 excel 中的数据, M 存储数据的变量名称; Sheet: 写入 excel 中的 sheet 名称(可选,若空默认 sheet1);,理学院 Arrow,Range:写入 excel 中的单元格区域 (可选, 若空默认A1); 输出参数: status: 写入状态 “1”表示写入成功 “0”表示写入失败 message: 若失败,则显现失败信息,理学院 Arrow,2.4 交互界面 uiimport 函数 在新版的 Matlab 中提供了界面化的数据交

5、互功能。 Uiimport 函数的语法 1. Uiimport 在命令窗口输入 uiimport 命令,出现文件选择窗口; 2 uiimport(filename) 在命令窗口输入 uiimport( filename),表示打开数据文件 filename; 3 uiimport(-file) 在命令窗口输入 uiimport(-file),表示在当前文件夹内选择数据文件; 4 uiimport(-pastespecial) 在命令窗口输入 uiimport(-pastespecial),表示打开当前剪贴板中的数据; 5 S = uiimport (.),理学院 Arrow,3. Excel-

6、Link 宏 如果 excel 文件数据量太大( 1GB)以上,使用函数进行数据交互存在一定问题,例如 Java 内存溢出 等等。数据量较大的时候可以使用 Excel-Link 宏进行数据交互。 Matlab 提供使其能与 excel 互动操作的 Excel-link 宏。 Excel-link 使得数据在 matlab 与 excel 之间随意交换,以及在 excel 下调用 matlab 的函数。 Excel-link 将 matlab 的强大的数值计算功能、数据可视化功能与 excel 的数据 Sheet 功能结合在一起。,理学院 Arrow,加载方法: 点击 excel 的 offic

7、e 按钮点击 excel 选项在加载项中 点击转到见下图 浏览( matlab 的安装路径) toolbox 文件夹 exlink 文件夹 excllink.xla 文件(打开) Startmatlab:点击启动 matlab Putmatrix: 将 Excel 的数据传输到 matlab 中 Getmatrix:将 matlab 的数据传输到 excel 中 Evalstring:执行 string 的 matlab 命令,理学院 Arrow,5 数据的平滑处理 在对时间序列数据(如信号数据或股票价格数据)进行统计分析时,或许存在数据的缺失或奇异(例如 ST 股票 反复的停牌), 往往需要

8、对数据进行平滑处理,本节介绍基于 MATLAB 的数据平滑方法,主要介绍 smooth 函数、 smoothts 函数和 medfilt1 函数的用法。,理学院 Arrow,5.1 smooth 函数 MATLAB 曲线拟合工具箱中提供了 smooth 函数,用来对数据进行平滑处理,其调用方式如下: yy = smooth(y) yy = smooth(y,span) yy = smooth(y,method) yy = smooth(y,span,method) yy = smooth(y,sgolay,degree) yy = smooth(y,span,sgolay,degree) yy

9、 = smooth(x,y,),理学院 Arrow,(1) yy = smooth(y) 利用移动平均滤波器对列向量 y 进行平滑处理,返回与 y 等长的列向量 yy. 移动平均滤波器的默认窗宽为 5 . (2) yy = smooth(y,span) 用 span 参数指定移动平均滤波器的窗宽, span 为奇数。 (3) yy = smooth(y,method) 用 method 参数指定平滑数据的方法, method 是字符串变量,可用的字符串如表所示。 (4) yy = smooth(y,span,method) 对于由 method 参数指定的平滑方法,用 span 参数指定滤波器

10、的窗宽。对于 loess 和 lowess 方法, span 是一个小于或等于 1 的数,表示占全体数据点总数的比例; 对于移动平均法和 Savitzky-Golay 法, span 必须是 一个正的奇数,只要用户输入的 span 是一个正数, smooth 函数内部会自动把 span 转为正的奇数。,理学院 Arrow,(5) yy = smooth(y,sgolay,degree) 利用 Savitzky-Golay 方法平滑数据,此时用 degree 参数指定多项式模型的阶数。 degree 是一个整数, 取值介于 0 和 span-1 之间。 (6) yy = smooth(y,spa

11、n,sgolay,degree) 用 span 参数指定 Savitzky-Golay 滤波器的窗宽。 span 必须是一个正的奇数, degree 是一个整数,取 值介于 0 和 span-1 之间。 (7) yy = smooth(x,y, ) 同时指定 x 数据。如果没有指定 x, smooth 函数中自动令 x = 1:length(y)。当 x 是非均匀数据或经过 排序的数据时,用户应指定 x 数据。如果 x 是非均匀数据而用户没有指定 method 参数, smooth 函数自动 用 lowess 方法。如果数据平滑方法要求 x 是经过排序的数据, smooth 函数自动对 x 进

12、行排序,理学院 Arrow,5.2 smoothts 函数 MATLAB 金融工具箱中提供了 smoothts 函数,也可用来对数据进行平滑处理,其调用方式如下: output = smoothts(input) output = smoothts(input, b, wsize) output = smoothts(input, g, wsize, stdev) output = smoothts(input, e, n),理学院 Arrow,6 数据的标准化变换 对于多元数据,当各变量的量纲和数量级不一致时,往往需要对数据进行变换处理,以消除量纲和 数量级的限制,将各变量的观测值转换到某一

13、指定的范围,如 1,1 , 0,1 等,以便进行后续的统计分 析。 本节介绍两种常用的数据变换方法:标准化变换和极差规格化变换。 zscore 函数:MATLAB 统计工具箱中提供了 zscore 函数,用来作数据的标准化变换,其调用方式如下: Z = zscore(X) Z,mu,sigma = zscore(X) = zscore(X,1) = zscore(X,flag,dim),理学院 Arrow,6.2 数据的极差规格化变换 变换公式对于观测值矩阵 X ,极差规格化变换后的矩阵为:,理学院 Arrow,理学院 Arrow,理学院 Arrow,实验作业,1、在国泰安网站下载数据,选择两个行业的四支股票, 计算其相关系数。 要求:下载数据的过程,计算过程都必须列出。原则就是,其他读 者可以直接按照作者的步骤还原实验过程。 注:原始数据以附件形式发送,理学院 Arrow,谢谢光临!,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号