Matlab数据导入方法

Matlab数据导入方法
Matlab数据导入方法

Matlab数据导入方法

在编写一个程序时,经常需要从外部读入数据,或者将程序运行的结果保存为文件。MATLAB使用多种格式打开和保存数据。本章将要介绍 MATLAB中文件的读写和数据的导入导出。

13.1 数据基本操作

本节介绍基本的数据操作,包括工作区的保存、导入和文件打开。

13.1.1 文件的存储

MATLAB支持工作区的保存。用户可以将工作区或工作区中的变量以文件的形式保存,以备在需要时再次导入。保存工作区可以通过菜单进行,也可以通过命令窗口进行。

1. 保存整个工作区

选择File菜单中的Save Workspace As…命令,或者单击工作区浏览器工具栏中的Save,可以将工作区中的变量保存为MAT文件。

2. 保存工作区中的变量

在工作区浏览器中,右击需要保存的变量名,选择Save

A s…,将该变量保存为MAT文件。

3. 利用save命令保存

该命令可以保存工作区,或工作区中任何指定文件。该命令的调用格式如下:

● save:将工作区中的所有变量保存在当前工作区中的文件中,文件名为 matlab.mat,MAT文件可以通过load函数再次导入工作区,MAT函数可以被不同的机器导入,甚至可以通过其他的程序调用。

● save('filename'):将工作区中的所有变量保存为文件,文件名由filename指定。如果filename中包含路径,则将文件保存在相应目录下,否则默认路径为当前路径。

● save('filename', 'var1', 'var2', ...):保存指定的变量在 filename 指定的文件中。

● save('filename', '-struct', 's'):保存结构体s中全部域作为单独的变量。

● save('filename', '-struct', 's', 'f1', 'f2', ...):保存结构体s中的指定变量。

● save('-regexp', expr1, expr2, ...):通过正则表达式指定待保存的变量需满足的条件。

● s ave('..., 'format'),指定保存文件的格式,格式可以为MAT文件、ASCII文件等。

13.1.2 数据导入

MATLAB中导入数据通常由函数load实现,该函数的用法如下:

● load:如果matlab.mat文件存在,导入matlab.mat中的所有变量,如果不存在,则返回error。

● load filename:将filename中的全部变量导入到工作区中。

● load filename X Y Z ...:将filename中的变量X、Y、Z等导入到工作区中,如果是MAT文件,在指定变量时可以使用通配符“*”。

● load filename -regexp expr1 expr2 ...:通过正则表达式指定需要导入的变量。

● load -ascii filename:无论输入文件名是否包含有扩展名,将其以ASCII格式导入;如果指定的文件不是数字文本,则返回error。

● load -mat filename:无论输入文件名是否包含有扩展名,将其以mat格式导入;如果指定的文件不是MAT文件,则返回error。

例13-1 将文件matlab.map中的变量导入到工作区中。

首先应用命令whos –file查看该文件中的内容:

>> whos -file matlab.mat

Name Size Bytes Class

A 2x3 48 double array

I_q 415x552x3 687240

uint8 array

ans 1x3 24 double array

num_of_cluster 1x1 8 double array

Grand total is 687250 elements using 687320 bytes 将该文件中的变量导入到工作区中:

>> load matlab.mat

该命令执行后,可以在工作区浏览器中看见这些变量,如图13-1所示。

图13-1 导入变量后的工作区视图

接下来用户可以访问这些变量。

>> num_of_cluster

num_of_cluster =

3

MATLAB中,另一个导入数据的常用函数为importdata,该函数的用法如下:

● importdata('filename'),将filename中的数据导入到工作区中;

● A = importdata('filename'),将filename中的数据导入到工作区中,并保存为变量A;

● importdata('filename','delimiter'),将filename中的数据导入到工作区中,以delimiter指定的符号作为分隔符;

例13-2 从文件中导入数据。

>> imported_data = importdata('matlab.mat')

imported_data =

ans: [1.1813 1.0928 1.6534]

A: [2x3 double]

I_q: [415x552x3 uint8]

num_of_cluster: 3

与load函数不同,importdata将文件中的数据以结构体的方式导入到工作区中。

13.1.3 文件的打开

MATLAB中可以使用open命令打开各种格式的文件,MATLAB自动根据文件的扩展名选择相应的编辑器。

需要注意的是open('filename.mat')和load('filename.mat')的不同,前者将filename.mat以结构体的方式打开在工作区中,后者将文件中的变量导入到工作区中,如果需要访问其中的内容,需要以不同的格式进行。

例13-3 open与load的比较。

>> clear

>> A = magic(3);

>> B = rand(3);

>> save

Saving to: matlab.mat

>> clear

>> load('matlab.mat')

>> A

A =

8 1 6

3 5 7

4 9 2

>> B

B =

0.9501 0.4860 0.4565 0.2311 0.8913 0.0185 0.6068 0.7621 0.8214 >> clear

>> open('matlab.mat')

ans =

A: [3x3 double]

B: [3x3 double]

>> struc1=ans;

>> struc1.A

ans =

8 1 6

3 5 7

4 9 2

>> struc1.B

ans =

0.9501 0.4860 0.4565

0.2311 0.8913 0.0185

0.6068 0.7621 0.8214

13.2 文本文件的读写

在上一节中介绍的函数和命令主要用于读写mat文件,而在应用中,需要读写更多格式的文件,如文本文件、word 文件、xml文件、xls文件、图像文件和音视频文件等。本节介绍文本文件(txt)的读写。其他文件的读写,用户可以参考MATLAB帮助文档。

MATLAB中实现文本文件读写的函数如表13-1所示。

表13-1 MATLAB中文本文件读写函数

函数

功能

csvread

读入以逗号分隔的数据

csvwrite

将数据写入文件,数据间以逗号分隔

dlmread

将以 ASCII 码分隔的数值数据读入到矩阵中

dlmwrite

将矩阵数据写入到文件中,以 ASCII 分隔

textread

从文本文件中读入数据,将结果分别保存

textscan

从文本文件中读入数据,将结果保存为单元数组

下面详细介绍这些函数。

1. csvread、csvwrite

csvread函数的调用格式如下:

● M = csvread('filename'),将文件filename中的数据读入,并且保存为M,filename中只能包含数字,并且数字之间以逗号分隔。M是一个数组,行数与filename的行数相同,列数为filename列的最大值,对于元素不足的行,以0补充。

● M = csvread('filename', row, col),读取文件filename 中的数据,起始行为row,起始列为col,需要注意的是,此时的行列从0开始。

● M = csvread('filename', row, col, range),读取文件filename 中的数据,起始行为 row,起始列为col,读取的数据由数组 range 指定,range 的格式为:[R1 C1 R2 C2],其中R1、C1为读取区域左上角的行和列,R2、C2为读取区域右下角的行和列。

csvwrite 函数的调用格式如下:

● csvwrite('filename',M),将数组M中的数据保存为文件filename,数据间以逗号分隔。

● csvwrite('filename',M,row,col),将数组M中的指定数据保存在文件中,数据由参数 row和col指定,保存row 和col右下角的数据。

● csvwrite写入数据时每一行以换行符结束。另外,该函数不返回任何值。

这两个函数的应用见下面的例子。

例13-4 函数csvread和csvwrite 的应用。

本例首先将MATLAB的图标转化为灰度图,将数据存储在文本文件中,再将其部分读出,显示为图形。

编写M文件,命名为immatlab.m,内容为:

% the example of functions csvread and csvwrite I_MATLAB= imread('D:\matlab.bmp'); % read in the image

I_MATLAB= rgb2gray(I_matlab); % convert

the image to gray image

figure,imshow(I_matlab,'InitialMagnification',100); % show the image

csvwrite('D:\matlab.txt',I_matlab); % write the data into a text file

sub_MATLAB= csvread('D:\matlab.txt',100,100);% read in part of the data

sub_MATLAB= uint8(sub_matlab); % convert the data to uint8

figure,imshow(sub_matlab,'InitialMagnification',100 ); % show the new image

在命令窗口中运行该脚本,输出图形如图13-2所示。

(a) (b)

图13-2 例13-3 的运行结果

该例中涉及到了少量的图像处理内容,超出本书的范围,感兴趣的读者可以查阅 MATLAB帮助文档中关于Image Processing Toolbox的介绍。

2. dlmread、dlmwrite(个人觉得这个比较好用)

dlmread函数用于从文档中读入数据,其功能强于

csvread。dlmread的调用格式如下:

● M = dlmread('filename')

● M = dlmread('filename', delimiter)

● M = dlmread('filename', delimiter, R, C)

● M = dlmread('filename', delimiter, range)

其中参数delimiter用于指定文件中的分隔符,其他参数的意义与csvread函数中参数的意义相同,这里不再赘述。dlmread函数与csvread函数的差别在于,dlmread函数在读入数据时可以指定分隔符,不指定时默认分隔符为逗号。

dlmwrite函数用于向文档中写入数据,其功能强于csvwrite函数。dlmwrite函数的调用格式为:

● dlmwrite('filename', M),将矩阵M的数据写入文件filename中,以逗号分隔。

● dlmwrite('filename', M, 'D'),将矩阵M的数据写入文件filename中,采用指定的分隔符分隔数据,如果需要tab键,可以用“\t”指定。

● dlmwrite('filename', M, 'D', R, C),指定写入数据的起始位置。

● dlmwrite('filename', M, attribute1, value1, attribute2, value2, ...),指定任意数目的参数,可以指定的参数见下表。

● dlmwrite('filename', M, '-append'),如果filename

指定的文件存在,在文件后面写入数据,不指定时则覆盖原文件。

● dlmwrite('filename', M, '-append', attribute-value list),叙写文件,并指定参数。

● dlmwrite 函数的可用参数如表13-2所示。

表13-2 dlmwrite函数的可用参数

参数名

功能

delimiter

用于指定分隔符

newline

用于指定换行符,可以选择“pc”或者“unix”

roffset

行偏差,指定文件第一行的位置,roffset 的基数为 0 coffset

列偏差,指定文件第一列的位置,coffset 的基数为 0 precision

指定精确度,可以指定精确维数,或者采用 c 语言的格式,如“%10.5f”

3. textread,textscan

当文件的格式已知时,可以利用textread函数和textscan函数读入。这里只介绍这两个函数应用的实例。

例13-5 通过%读入文件,按照原有格式读取。

文件的内容为:

Sally Level1 12.34 45 Yes

在命令窗口中输入:

>> [names, types, x, y, answer] = textread('D:\mat.txt','%s %s %f %d %s', 1)

得到结果为:

names =

'Sally'

types =

'Level1'

x =

12.3400

y =

45

answer =

'Yes'

例13-6 函数csvread和csvwrite的应用

Sally Level1 12.34 45 1.23e10 inf NaN Yes

Joe Level2 23.54 60 9e19 -inf 0.001 No

Bill Level3 34.90 12 2e5 10 100 No

>> fid = fopen('D:\mat.txt');

>> C = textscan(fid, '%s %s %f32 %d8 %u %f %f %s');

>> fclose(fid);

13.3 低级文件I/O

本节介绍一些基本的文件操作,这些操作如表13-3所示。

表13-3 MATLAB的基本文件操作

函数

功能

fclose

关闭打开的文件

feof

判断是否为文件结尾

ferror

文件输入输出中的错误查找

fgetl

读入一行,忽略换行符

fgets

读入一行,直到换行符

fopen

打开文件,或者获取打开文件的信息

fprintf

格式化输入数据到文件

fread

从文件中读取二进制数据

frewind

将文件的位置指针移至文件开头位置

fscanf

格式化读入

fseek

设置文件位置指针

ftell

文件位置指针

fwrite

向文件中写入数据

下面重点介绍函数fprintf。该函数的调用格式如下:count = fprintf(fid, format, A, ...),该语句将矩阵A及后面其他参数中数字的实部以 format 指定的格式写入到fid指定的文件中,返回写入数据的字节数。

上面语句中,参数format由%开头,共可由4个部分组

成,分别如下:

● 标记(flag),为可选部分。

● 宽度和精度指示,为可选部分。

● 类型标志符,为可选部分。

● 转换字符,为必需部分。

1. 标记

标记用于控制输出的对齐方式,可以选择的内容如表13-4所示。

表13-4 标记的可选内容

函数

功能

示例

负号(-)

在参数左侧进行判别

%-5.2d

加号(+)

在数字前添加符号

%+5.2d

空格

在数字前插入空格

% 5.2d

在数字前插入0

%05.2d

2. 宽度和精度指示

用户可以通过数字指定输出数字的宽度及精度,格式如下:

● %6f,指定数字的宽度;

● %6.2f,指定数字的宽度及精度;

● %.2f,指定数字的精度。

例13-6 fprintf函数宽度和精度指示符示例。

在命令窗口中输入如下命令:

>> file_type = fopen('D:\type.txt','w');

>> fprintf(file_h, '%6.2f %12.8f\n', 1.2, -43.3);

>> fprintf(file_h, '%6f %12f\n', 1.2, -43.3);

>> fprintf(file_h, '%.2f %.8f\n', 1.2, -43.3);

>> fclose(file_h)

ans =

打开该文件,其内容为:

1.20 -43.30000000

1.200000 -43.300000

1.20 -43.30000000

从上述结果可以看出宽度和精度控制的效果。

3. 转换字符

转换字符用于指定输出的符号,可以选择的内容如表13-5所示。

表13-5 格式化输出的标志符及意义

标志符

意义

%c

输出单个字符

%d

输出有符号十进制数

%e

采用指数格式输出,采用小写字母 e,如:3.1415e+00 (续表)

标志符

意义

%E

采用指数格式输出,采用大写字母 E,如:3.1415E+00

%f

以定点数的格式输出

%g

%e及%f的更紧凑的格式,不显示数字中无效的 0

%G

与%g相同,但是使用大写字母E

%i

有符号十进制数

%o

无符号八进制数

%s

输出字符串

%u

无符号十进制数

%x

十六进制数(使用小写字母a-f)

%X

十六进制数(使用大写字母A-F)

其中 %o、%u、%x、%X支持使用子类型,具体情况这里不再赘述。格式化输出标志符的效果见下面的例子。

例13-7 fprintf 格式化输出示例。

>> x = 0:.1:1;

>> y = [x; exp(x)];

>> fid = fopen('exp.txt', 'wt');

>> fprintf(fid, '%6.2f %12.8f\n', y);

>> fclose(fid)

ans =

显示该文件:

>> type exp.txt

0.00 1.00000000

0.10 1.10517092

0.90 2.45960311

1.00

2.71828183

例13-9 利用 fprintf 函数在显示器上输出字符串

>> fprintf(1,'It''s Friday.\n')

It's Friday.

在该例中,利用1表示显示器,并且用两个单引号显示单引号,使用\n进行换行。在格式化输出中,这类符号称为转义符。MATLAB中的常用转义符如表13-6所示。

表13-6 MATLAB中的常用转义符

转义符

功能

\b

退格

实验八MATLAB文件操作与数据导入导出

实验八 Matlab 文件操作与数据接口 一、实验目的 1、熟练掌握工作区变量的文件操作; 2、熟练掌握文本文件的读写操作; 3、熟练掌握格式化文本文件的输入输出语句的执行 4、了解二进制文件、Mat文件的读写操作 二、实验仪器与软件 1. PC计算机 2. Matlab软件 三、实验原理 1. 二进制文件与文本文件的区别: 将文件看作是由一个一个字节(byte) 组成的,那么文本文件中的每个字节的最高位都是0,也就是说文本文件使用了一个字节中的七位来表示所有的信息,而二进制文件则是将字节中的所有位都用上了。这就是两者的区别;接着,第二个问题就是文件按照文本方式或者二进制方式打开,两者会有什么不同呢?其实不管是二进制文件也好,还是文本文件也好,都是一连串的0和1,但是打开方式不同,对于这些0和1的处理也就不同。如果按照文本方式打开,在打开的时候会进行translate,将每个字节转换成ASCII 码,而以按照二进制方式打开的话,则不会进行任何的translate;最后就是文本文件和二进制文件在编辑的时候,使用的方式也是不同的。譬如,你在记事本中进行文本编辑的时候,你进行编辑的最小单位是字节(byte);而对二进制文件进行编辑的话,最小单位则是位(bi t),当然我们都不会直接通过手工的方式对二进制文件进行编辑了。 从文件编码的方式来看,文件可分为ASCII码文件和二进制码文件两种:ASCII文件也称为文本文件,这种文件在磁盘中存放时每个字符对应一个字节,用于存放对应的ASCII码。例如,数5678的存储形式为: ASCII码:00110101 00110110 00110111 00111000 ↓↓↓↓ 十进制码:5678

MATLAB数据分析与多项式计算(M)

第7章 MATLAB数据分析与多项式计算 6.1 数据统计处理 6.2 数据插值 6.3 曲线拟合 6.4 离散傅立叶变换 6.5 多项式计算 6.1 数据统计处理 6.1.1 最大值和最小值 MATLAB提供的求数据序列的最大值和最小值的函数分别为max 和min,两个函数的调用格式和操作过程类似。 1.求向量的最大值和最小值 求一个向量X的最大值的函数有两种调用格式,分别是: (1) y=max(X):返回向量X的最大值存入y,如果X中包含复数元素,则按模取最大值。 (2) [y,I]=max(X):返回向量X的最大值存入y,最大值的序号存入I,如果X中包含复数元素,则按模取最大值。 求向量X的最小值的函数是min(X),用法和max(X)完全相同。 例6-1 求向量x的最大值。 命令如下: x=[-43,72,9,16,23,47]; y=max(x) %求向量x中的最大值 [y,l]=max(x) %求向量x中的最大值及其该元素的位置 2.求矩阵的最大值和最小值 求矩阵A的最大值的函数有3种调用格式,分别是: (1) max(A):返回一个行向量,向量的第i个元素是矩阵A的第i 列上的最大值。 (2) [Y,U]=max(A):返回行向量Y和U,Y向量记录A的每列的最大值,U向量记录每列最大值的行号。 (3) max(A,[],dim):dim取1或2。dim取1时,该函数和max(A)完全相同;dim取2时,该函数返回一个列向量,其第i个元素是A矩阵的第i行上的最大值。 求最小值的函数是min,其用法和max完全相同。

例6-2 分别求3×4矩阵x中各列和各行元素中的最大值,并求整个矩阵的最大值和最小值。 3.两个向量或矩阵对应元素的比较 函数max和min还能对两个同型的向量或矩阵进行比较,调用格式为: (1) U=max(A,B):A,B是两个同型的向量或矩阵,结果U是与A,B 同型的向量或矩阵,U的每个元素等于A,B对应元素的较大者。 (2) U=max(A,n):n是一个标量,结果U是与A同型的向量或矩阵,U的每个元素等于A对应元素和n中的较大者。 min函数的用法和max完全相同。 例6-3 求两个2×3矩阵x, y所有同一位置上的较大元素构成的新矩阵p。 6.1.2 求和与求积 数据序列求和与求积的函数是sum和prod,其使用方法类似。设X是一个向量,A是一个矩阵,函数的调用格式为: sum(X):返回向量X各元素的和。 prod(X):返回向量X各元素的乘积。 sum(A):返回一个行向量,其第i个元素是A的第i列的元素和。 prod(A):返回一个行向量,其第i个元素是A的第i列的元素乘积。 sum(A,dim):当dim为1时,该函数等同于sum(A);当dim为2时,返回一个列向量,其第i个元素是A的第i行的各元素之和。 prod(A,dim):当dim为1时,该函数等同于prod(A);当dim为2时,返回一个列向量,其第i个元素是A的第i行的各元素乘积。 例6-4 求矩阵A的每行元素的乘积和全部元素的乘积。 6.1.3 平均值和中值 求数据序列平均值的函数是mean,求数据序列中值的函数是median。两个函数的调用格式为: mean(X):返回向量X的算术平均值。 median(X):返回向量X的中值。

将PSCAD中的数据导入MATLAB

如何将PSCAD/EMTDC中的数据导入MATLAB中呢? 以接地极线路单线接地故障(将模型命名为WLDanjiedi01)为例进行详细的介绍:1、模型建立完毕,右击选择“Project Settings”出现如下界面 将”Save channels to disk?”选择为“Yes”,并在后面的“Output file”进行输出文件的命名,如例文件名命名为“WLDanjiedi01.out”(最好与模型名称一致),将模型保存至XX位置。 2、模型仿真完毕,在XX位置会生成一个名为“WLDanjiedi01.emt”的文件夹, 文件夹中后缀为“WLDanjiedi01-01.out到WLDanjiedi01-06.out”的文件储存着仿真所得到的数据;名为“WLDanjiedi01.inf”的文件是所有数据的说明,如果需要在MATLAB中进行编程处理数据,则要根据此文件中的说明在MATLAB中进行变量的定义。 3、在MATLAB中的工作窗口如下,

单击“Import data”找到“WLDanjiedi01.emt”目录,界面如下 下拉文件类型(T)选择“All Files(*.*)”出现如下界面 选择“WLDanjiedi01-01.out到WLDanjiedi01-06.out”中所需要的即可,例如导入“WLDanjiedi01-01.out”,选中后点击打开,经过一定时间会出现如下界面

选择“Next”,接着选择“Finish”即可完成数据的导入,此时MATLAB中的工作窗口如下,出现了“WLDanjiedi01-01”文件夹。 选中“WLDanjiedi01-01”,界面变成如下,单击“Plot(WLDanjiedi01-01)”会生成此文件夹所包含数据的波形图。

MATLAB导入CAD数据

用AutoCAD绘制平面公式曲线(如渐开线、心形线)、空间公式曲线(如螺旋线)以及公式曲面(如马鞍形曲面)是比较困难的,一般情况下,需要用AutoCAD开发程序编程,但多数程序比较复杂,尤其是公式曲面的绘制程序,需要多层嵌套循环,复杂且运行效率低。 快速且精确地绘制各种公式曲线、曲面恰恰是MATLAB的长项,但是MATLAB绘制的图形却不能直接用于机械零件设计。其中非常关键的一点,就是MATLAB绘制的曲线、曲面分别是由有限个点连接而成的折线和空间网格构成的,而在AutoCAD中绘制的曲线、曲面也是如此。因此,只需要把在MATLAB中绘制的公式曲线、曲面上所有的点坐标数据都提取出来,若能让AutoCAD正确识别,那么我们就可以在AutoCAD中精确地绘制这些曲线、曲面了。 本文介绍了一种快速、精确地绘制各种公式曲线、曲面的方法,即在AutoCAD中通过调用经过Excel处理的MATLAB数据实现。 二、AutoCAD和MATLAB的特点 MATLAB是非常优秀的科学计算、信号处理以及图形显示软件,它有自身的语言,与其他高级语言相比,MATLAB提供了一个人机交互的数学环境,并以矩阵作为基本的数据结构,可大大节省编程时间。另外,MATLAB不仅语法规则简单,容易掌握,调试方便,还可以存储中间结果,这使得MATLAB既可以快捷、精确地绘制各种公式曲线、曲面,又可以很方便地提取中间数据。 在工业设计领域,AutoCAD不仅被广泛应用于平面绘图,也可以用于三维建模,但在曲线、曲面造型方面不是很理想。它是开放型的人机交互系统,有多种语言接口,与外界的数据交换很灵活,这些特点使得它与MATLAB的结合成为可能。 三、结合MATLAB在AutoCAD中绘制曲线、曲面的原理及方法 1.原理 MATLAB中的矩阵数据虽然很容易提取,但由于它不是AutoCAD能识别的格式,因此不能直接被AutoCAD调用,需要先用Excel对从MATLAB中提取的数据进行编辑,转换成AutoCAD可以识别的格式,才能在AutoCAD中绘出曲线、曲面。 2.方法 由于在AutoCAD中绘制平面曲线、空间曲线和曲面的绘制命令不同,且数据结构也不同,因此结合MATLAB的绘制方法也稍有区别。这种绘制方法的关键就是把数据格式转换成AutoCAD的绘制命令所需要的数据格式,只要熟悉AutoCAD的数据结构,就可以举一反三。 (1)利用MATLAB得到公式曲面数据 1)在MATLAB中绘制出曲面 在MATLAB中输入如下命令: [th,r]=meshgrid((0:5:360)*pi/180,0:.05:1); %在极坐标系下设置一个73×21的网格矩阵,即圆周方向分为73份,半径方向分为21份,总共分了1533个点,节点越多,图形越精确% [X,Y]=pol2cart(th,r); %转化为笛卡儿坐标系% Z=X+i.*Y;

导入包含数据的txt文件到MATLAB中

导入包含数据的txt文件到MATLAB中,并绘制图像 (2013-08-07 17:14:49) 转载▼ 标签: matlab 这回把步骤写得详详细细的,再不会忘记了吧,哇呀呀哎呀 第一步:先把txt文件复制到MATLAB的目录,或者在MATLAB中将路径指向txt文件所在路径。 第二步:右键存有数据的txt文件,选择Import Data... 第三步:Import Data之后就能看到txt里的数据被妥善安放好位置了,然后在Range右边的列表中选择Matrix,再点击绿色的对勾√导入数据:

第四步:导入完数据后,在workplace里能看到名为txt文件名的数组变量,就说明导入成功,这里是a:

第五步:最后就是编写语句了:plot(a(:,2),a(:,3),'o'),回车就会出现以o为点的散点图,如果是:plot(a(:,2),a(:,3),'*'),就得到以*为点的散点图;

绘图说明(本节来自互联网资源): 1.将数据表的各列数值分别赋予变量x、y、z等,格式如下:x=sheetname(:,1), y=sheetname(:,2), z=sheetname(:,3); 2.用命令plot(x,y,’XXXX’)绘制图形,单引号中的符号表示点线的属性,如线形、颜色、点的形状等,若用双对数坐标画图则命令为loglog(x,y); 3.在弹出的绘图界面中用菜单View—Property Editor编辑图形属性,如字体大小、数据点形状、横纵坐标名称、绘图区域颜色等; 4.绘图方法2:在数组编辑器上点击Plot Selection按钮,选择图形的类型即可; 5.绘图方法3:菜单File—New—Figure创建新的图形,在图形编辑器中Figure Palette面板点击2D Axes,点击右下角Add Data选择图表类型和坐标轴的数据源,度分布图将坐标轴由线形改为对数即可。 6.hold on/off命令:叠绘命令,切换绘图的保持功能; 7.绘制双纵轴: 7.1 plotyy(x1,y1,x2,y2):分别用左/右侧y轴表示两条曲线; 7.2 plotyy(x1,y1,x2,y2,FUN):FUN是字符串格式,用来指定绘图的函数名,可以由多个。

Matlab 如何读取 Excel 表格数据

? 上一篇: 在VC++程序中输出空心文字下一篇: My ANN program ? Matlab 如何读取 Excel 表格数据 Cyberr @ 2005-03-31 12:44 Subject: Are there any examples that show how to use the ActiveX automation interface to connect MATLAB to Excel? Problem Description I am trying to control Excel from MATLAB using ActiveX. Are there any examples that show how to use the ActiveX automation interface from Excel to do this? Solution: Most of the functionality that you get from ActiveX is dependent on the object model, which the external application implements. Consequently, we are usually unable tp provide much information about the functions that you need to use in the remote application to perform a particular function. We do, however, have an example that shows how to do perform common functions in Excel. We also recommend that you become more familiar with the Excel object model in order to better use Excel's ActiveX automation interface from MATLAB. You can find more information on this interface by selecting the "Microsoft Excel Visual Basic Reference" topic in the Microsoft Excel Help Topic dialog. This topic area contains a searchable description of Excel methods and properties. The following example demonstrates how to insert MATLAB data into Excel. It also shows how to extract some data from Excel into MATLAB. For more information, refer to the individual comments for each code segment. % Open Excel, add workbook, change active worksheet, % get/put array, save, and close % First open an Excel Server Excel = actxserver('Excel.Application'); set(Excel, 'Visible', 1); % Insert a new workbook

Matlab的各种数据读取、文件读写等操作汇总

Matlab 的各种数据读取、文件读写等操作汇总 MATLAB 提供了多种方式从磁盘读入文件或将数据输入到工作空间,即读取数据,又叫导入数据;将工作空间的变量存储到磁盘文件中称为存写数据,又叫导出数据。至于选择哪种机制,则根据下面两个因素决定:?用户所执行的 操作是导入数据还是导出数据;?数据的格式为文本格式、 二进制格式还是如HDF 之类的标准格式。将数据导入MATLAB 中最容易的方法就是使用导入数据模板(Import Wizard) ,使用该模板时不需要知道数据的格式,只需指定包含这些数据的文件,然后导入模板会自动处理文件内容。本章重点内容如下:? 文件的打开和关闭? 文本文件的读取?存写ASCII数据?二进制数据的读取? 二进制数据的存写? 使用I/O文件函数进行数据读写?MAT 文件的读写 2.1 文件的打开和关闭2.1.1 文件的打开无论是要读写ASCII 码文件还是二进制文件,都必须先用fopen 函数将其打开,在默认情况下,fopen 以二进制格式打开文件,它的使用语法如下:fopen ('filename', 'mode') 其中filename 表示要读写的文件名称,mode 则表示要对文件进行的处理方式,如下:rt :以只读方式(Reading)打开文件wt:以只写方式(Writing)打开文件at:以追加方式(Appending)打开文件,新内容将从原文件后面续写r+t:以同时读写方式打开文件w+t :以同时读写创建文件,原文件内容被清除

a+t :以同时读和追加(Reading and Appdending) 方式,原文件内容被保留,新内容将从原文件的后面开始At :以读写方式打开或创建文件,适用于对磁带介质文件的操作Wt :以写入方式打 开或创建文件,原文件内容被清除,适用于磁带介质文件的操作fopen 函数有两个返回值,一个是返回一个文件标志(file Identifier) ,它会作为参数被传入其他对文件进行读写操作的命令,通常是一个非负的整数,可用此标识来对此文件进行各种处理。如果返回的文件标识是-1,则代表fopen无法打开文件,其原因可能是文件不存在,或是用户无法打开此文件权限。另一个返回值就是message ,用于返回无法打开文件的原因。为了安全起见,最好在每次使用fopen 函数时,都测试其返回值是否为有效值。下面以脚本m 文件为例来声明文件的打开。例 2-1 %exam1.m[f,message]=fopen('fileexam1', 'r')if f==-1disp (message); % 显示错误信息end 若文件fileexam1 不存在,则显示如下信息。Cannot open file.existence?permissions?memory?... 例2-2 %exam2.m[f,message]=fopen('fileexam2', 'r');if f==-1disp (message); % 显示错误信息else disp(f);end 若文件fileexam2 存在,则返回f值。 2.1.2 文件的关闭一旦完成文件的读写,最好关闭文件,以便对其进行其他操作。这时就可以使用fclose 函数来关闭文件,其适用语法如下:fclose(f) 。其中 f 为打开文件的标志,若fclose 函数返回值为0 ,则表示成功关闭 f 标志的文件;若返回值为-1,

实验1 MATLAB使用方法和程序设计

实验1 MATLAB 使用方法和程序设计 一、实验目的 1、掌握MATLAB 软件使用的基本方法。 2、熟悉MATLAB 的数据表示、基本运算和程序控制语句。 3、熟悉MATLAB 绘图命令及基本绘图控制。 4、熟悉MATLAB 程序设计的基本方法。 二、实验内容 1.帮助命令 使用Help 命令,查找sqrt (开方)函数的使用方法。 2、矩阵运算 (1)矩阵乘法 已知A=[1 2;3 4];B=[5 5;7 8]; 求A^2*B 。 (2) 矩阵除法 已知A=[1 2 3;4 5 6;7 8 9];B=[1 0 0;0 2 0;0 0 3]; 求A\B,A/B 。 (3) 矩阵的转置及共轭转置 已知A=[5+i ,2-i ,1;6*i ,4,9-i];求A.’,A ’ 。 (4)使用冒号选出指定元素 已知A=[1 2 3 ; 4 5 6 ; 7 8 9]; 求A 中第3列前2个元素;A 中所有列第2,3行的元素。 (5)方括号[] 用magic 函数生成一个4阶魔术矩阵,删除该矩阵的第四列。 3、多项式 (1)求多项式p(x)=x 3-2x-4的根。 (2)求 f (x) = (cos x)2 的一次导数。 (3)求微分方程 的通解,并验证。 4、基本绘图命令 (1)绘制余弦曲线cost =y , ]2,0[π∈t 。 (2)在同一坐标系中绘制余弦曲线 0.25)-cos(t =y 和正弦曲线 )5.0sin(-=t y ,]2,0[π∈t (3)用plot3函数绘制三维螺线: 22x dy xy xe dx -+= sin()cos()x t y t z t =??=??=?( 0 < t < 20 )

matlab文件的导入导出

GprMaxV2.0中GprMax2D输入文件的命令(1/2) 原创 修改人 修改时间 版本 微风无尘 微风无尘 2012.3.9 V1.1 实验环境: 操作系统:Windows 7 软件版本:MATLAB 7.1 & GprMaxV2.0 参考文献: GprMaxV2.0软件manual文件夹下的UserGuideV2.pdf。 GprMaxV2.0下载地址:https://www.360docs.net/doc/f6315650.html,/Download.html 说明:翻译得不好,还望大家见谅,因为我也是边看边译的。 3.1 GprMax2D命令的一般注意事项 为了描述GprMax2D/3D命令及其参数,我们作以下约定: f表示浮点数(如1.5或15e-1、1.5e1) i表示整数

c表示字符 str表示字符串 file表示输入文件名 所有空间距离的基本单位为米 所有时间的基本单位为秒 所有频率参数的基本单位是Hz 3.2 GprMax2D 2.0版本共有32条命令:#title: #domain: #dx_dy: #time_step_stability_factor: #time_window: #messages: #number_of_media: #nips_number: #media_file: #geometry_file: #medium: #abc_type:

#abc_order: #abc_stability_factors: #abc_optimization_angles: #abc_mixing_parameters: #pml_layers: #box: #cylinder: #x_segment: #y_segment: #triangle: #analysis: #end_analysis: #tx: #rx: #rx_box: #snapshot: #tx_steps: #rx_steps: #line_source: #excitation_file:

Matlab数据文件的读写

Matlab数据文件的读写 在编写一个程序时,经常需要从外部读入数据,或者将程序运行的结果保存为文件。MATLAB使用多种格式打开和保存数据。本章将要介绍MATLAB中文件的读写和数据的导入导出。 了解MATLAB的基本数据操作 掌握MATLAB中文本文件的读写方式 掌握MATLAB通过界面导入导出数据 了解MATLAB中的基本输入输出函数 13.1 数据基本操作 本节介绍基本的数据操作,包括工作区的保存、导入和文件打开。 13.1.1 文件的存储 MATLAB支持工作区的保存。用户可以将工作区或工作区中的变量以文件的形式保存,以备在需要时再次导入。保存工作区可以通过菜单进行,也可以通过命令窗口进行。 1. 保存整个工作区 选择File菜单中的Save Workspace As…命令,或者单击工作区浏览器工具栏中的Save,可以将工作区中的变量保存为MAT文件。 2. 保存工作区中的变量 在工作区浏览器中,右击需要保存的变量名,选择Save

As…,将该变量保存为MAT文件。 3. 利用save命令保存 该命令可以保存工作区,或工作区中任何指定文件。该命令的调用格式如下: ● save:将工作区中的所有变量保存在当前工作区中的文件中,文件名为matlab.mat,MAT文件可以通过load函数再次导入工作区,MAT函数可以被不同的机器导入,甚至可以通过其他的程序调用。 ● save('filename'):将工作区中的所有变量保存为文件,文件名由filename指定。如果filename中包含路径,则将文件保存在相应目录下,否则默认路径为当前路径。 ● save('filename', 'var1', 'var2', ...):保存指定的变量在filename 指定的文件中。 ● save('filename', '-struct', 's'):保存结构体s中全部域作为单独的变量。 ● save('filename', '-struct', 's', 'f1', 'f2', ...):保存结构体s中的指定变量。 ● save('-regexp', expr1, expr2, ...):通过正则表达式指定待保存的变量需满足的条件。 ● save('..., 'format'),指定保存文件的格式,格式可以为MAT 文件、ASCII文件等。 13.1.2 数据导入

第6章matlab数据分析与多项式计算_习题答案

第6章 MATLAB数据分析与多项式计算 习题6 一、选择题 1.设A=[1,2,3,4,5;3,4,5,6,7],则min(max(A))的值是()。B A.1 B.3 C.5 D.7 2.已知a为3×3矩阵,则运行mean(a)命令是()。B A.计算a每行的平均值 B.计算a每列的平均值 C.a增加一行平均值 D.a增加一列平均值 3.在MATLAB命令行窗口输入下列命令: >> x=[1,2,3,4]; >> y=polyval(x,1); 则y的值为()。 D A.5 B.8 C.24 D.10 4.设P是多项式系数向量,A为方阵,则函数polyval(P,A)与函数polyvalm(P,A)的值()。D A.一个是标量,一个是方阵 B.都是标量 C.值相等 D.值不相等 5.在MATLAB命令行窗口输入下列命令: >> A=[1,0,-2]; >> x=roots(A); 则x(1)的值为()。 C A.1 B.-2 C. D. 6.关于数据插值与曲线拟合,下列说法不正确的是()。A A.3次样条方法的插值结果肯定比线性插值方法精度高。 B.插值函数是必须满足原始数据点坐标,而拟合函数则是整体最接近原始数据点,而不一定要必须经过原始数据点。 C.曲线拟合常常采用最小二乘原理,即要求拟合函数与原始数据的均方误差达到极小。 D.插值和拟合都是通过已知数据集来求取未知点的函数值。 二、填空题 1.设A=[1,2,3;10 20 30;4 5 6],则sum(A)= ,median(A)= 。 [15 27 39],[4 5 6[ 2.向量[2,0,-1]所代表的多项式是。2x2-1 3.为了求ax2+bx+c=0的根,相应的命令是(假定a、b、c已经赋值)。为了

excel中的数据导入matlab中

用Excel Link实现Excel与Matlab混合编程 Excel Link是一个在Windows环境下实现Excel与Matlab进行链接的插件。通过连接Excel 和Matlab,用户可以在Excel工作表空间和宏编程工具中使用Matlab的数值计算,图形处理等功能,不需要脱离Excel环境。同时由Excel Link来保证两个工作环境中的数据交换和同步更新。 1. Excel Link的安装和和设置首先,在系统中安装Excel软件。然后安装Matlab和Excel Link,用Matlab安装盘开始安装,选择自定义安装中,在选中组件ExcelLink,如下图所示:安装完Excel Link后还需要在Excel中进行一些设置后才能使用。启动Excel,选择菜单“工具”项下的“加载宏”项,弹出如下对话框:选中Excel Link项。如果该项不存在,则通过浏览目录,在目录%MATLAB%toolboxexlink下找到excllink.xla文件,如下图示,并确定。选中ExcelLink项并确定后,在Excel中多了一个Excel Link工具条,如下图示: 经过以上的设置后就可以开始使用Excel Link了。 2. ExcelLink连接管理函数 (1) Matlabinit 该函数只能在宏子例程中使用。初始化ExcelLink和启动Matlab进程。只有在MLAutoStart 函数中使用“no”参数,才需要手动使用Matlabinit来初始化ExcelLink和启动Matlab进程,如果使用参数“yes”,则Matlabinit是自动执行的。 使用语法:Matlabinit (2) MLAutoStart 设置自动启动Matlab和ExcelLink。 在工作表中的使用语法: MLAutoStart("yes") MLAutoStart("no") 在宏中的使用语法: MLAutoStart "yes" MLAutoStart "no" 使用“yes”参数,则当Excel启动时,自动启动Matlab和ExcelLink;如果使用参数“no”,则当Excel启动时,不启动Matlab和ExcelLink。如果在此之前它们已经启动,则无任何影响。 (3) MLClose 终止Matlab进程并删除Matlab工作空间的所有变量。并通知Excel,Matlab不再运行。 在工作表中的使用语法: MLClose() 在宏中的使用语法: MLClose (4) MLOpen 启动Matlab进程。如果Matlab进程已经启动,则MLOpen函数不进行任何操作。在使用MLClose关闭Matlab进程后使用MLOpen来重新启动Matlab。 在工作表中的使用语法: MLOpen() 在宏中的使用语法: MLOpen

matlab基本使用方法

1-1、基本运算与函数 在MATLAB下进行基本数学运算,只需将运算式直接打入提示号(>>)之後,并按入Enter键即可。例如:>> (5*2+1.3-0.8)*10/25 ans =4.2000 MATLAB会将运算结果直接存入一变数ans,代表MATLAB运算後的答案(Answer)并显示其数值於萤幕上。小提示: ">>"是MATLAB的提示符号(Prompt),但在PC中文视窗系统下,由於编码方式不同,此提示符号常会消失不见,但这并不会影响到MATLAB的运算结果。 我们也可将上述运算式的结果设定给另一个变数x: x = (5*2+1.3-0.8)*10^2/25 x = 42 此时MATLAB会直接显示x的值。由上例可知,MATLAB认识所有一般常用到的加(+)、减(-)、乘(*)、除(/)的数学运算符号,以及幂次运算(^)。 小提示: MATLAB将所有变数均存成double的形式,所以不需经过变数宣告(Variable declaration)。MATLAB同时也会自动进行记忆体的使用和回收,而不必像C语言,必须由使用者一一指定.这些功能使的MATLAB易学易用,使用者可专心致力於撰写程式,而不必被软体枝节问题所干扰。 若不想让MATLAB每次都显示运算结果,只需在运算式最後加上分号(;)即可,如下例: y = sin(10)*exp(-0.3*4^2); 若要显示变数y的值,直接键入y即可: >>y y =-0.0045 在上例中,sin是正弦函数,exp是指数函数,这些都是MATLAB常用到的数学函数。 下表即为MATLAB常用的基本数学函数及三角函数: 小整理:MATLAB常用的基本数学函数 abs(x):纯量的绝对值或向量的长度 angle(z):复数z的相角(Phase angle) sqrt(x):开平方 real(z):复数z的实部 imag(z):复数z的虚部 conj(z):复数z的共轭复数 round(x):四舍五入至最近整数 fix(x):无论正负,舍去小数至最近整数 floor(x):地板函数,即舍去正小数至最近整数 ceil(x):天花板函数,即加入正小数至最近整数 rat(x):将实数x化为分数表示 rats(x):将实数x化为多项分数展开 sign(x):符号函数 (Signum function)。 当x<0时,sign(x)=-1; 当x=0时,sign(x)=0; 当x>0时,sign(x)=1。 > 小整理:MATLAB常用的三角函数 sin(x):正弦函数 cos(x):馀弦函数 tan(x):正切函数

实验一数据处理方法MATLAB实现

实验一数据处理方法的MATLAB实现 一、实验目的 学会在MATLAB环境下对已知的数据进行处理。 二、实验方法 1. 求取数据的最大值或最小值。 2. 求取向量的均值、标准方差和中间值。 3.在MATLAB环境下,对已知的数据分别进行曲线拟合和插值。 三、实验设备 1.586以上微机,16M以上内存,400M硬盘空间,2X CD-ROM 2.MATLAB5.3以上含CONTROL SYSTEM TOOLBOX。 四、实验内容 1.在MATLAB环境下,利用MATLAB控制系统工具箱中的函数直接求取数据的最大值或最小值,以及向量的均值、标准方差和中间值。 2.在MATLAB环境下,选择合适的曲线拟合和插值方法,编写程序,对已知的数据分别进行曲线拟合和插值。 五、实验步骤 1. 在MATLAB环境下,将已知的数据存到数据文件mydat.mat中。 双击打开Matlab,在命令窗口(command window)中,输入一组数据:实验一数据处理方法的MATLAB实现 一、实验目的 学会在MATLAB环境下对已知的数据进行处理。 二、实验方法 1. 求取数据的最大值或最小值。 2. 求取向量的均值、标准方差和中间值。 3.在MATLAB环境下,对已知的数据分别进行曲线拟合和插值。 三、实验设备 1.586以上微机,16M以上内存,400M硬盘空间,2X CD-ROM 2.MATLAB5.3以上含CONTROL SYSTEM TOOLBOX。 四、实验内容

1.在MATLAB环境下,利用MATLAB控制系统工具箱中的函数直接求取数据的最大值或最小值,以及向量的均值、标准方差和中间值。 2.在MATLAB环境下,选择合适的曲线拟合和插值方法,编写程序,对已知的数据分别进行曲线拟合和插值。 五、实验步骤 1. 在MATLAB环境下,将已知的数据存到数据文件mydat.mat中。 双击打开Matlab,在命令窗口(command window)中,输入一组数据: x=[1,4,2,81,23,45] x = 1 4 2 81 2 3 45 单击保存按钮,保存在Matlab指定目录(C:\Program Files\MATLAB71)下,文件名为“mydat.mat”。 2. 在MATLAB环境下,利用MATLAB控制系统工具箱中的函数直接求取数据的最大值或最小值,以及向量的均值、标准方差和中间值。 继续在命令窗口中输入命令: (1)求取最大值“max(a)”; >> max(x) ans = 81 (2)求取最小值“min(a)”; >> min(x) ans = 1 (3)求取均值“mean(a)”; >> mean(x) ans =

matlab导出数据(fprintf,dlmwrite,xlswrite)

matlab导出数据(fprintf,dlmwrite,xlswrite) 1.用fprintf 函数写数据到txt,xls Example: x = 0:.1:1; y = [x; exp(x)]; fid = fopen('exp.txt', 'w'); fprintf(fid, '%6.2f %12.8f\n', y); fclose(fid) tip:执行上述代码执行,肯定不会换行的,换行的问题试一下下面的代码 x = 0:.1:1; y = [x; exp(x)]; fid = fopen('exp.txt', 'wt'); fprintf(fid, '%6.2f %12.8f\n', y); fclose(fid); x = 1; fid = fopen('exp.txt', 'w'); fprintf(fid, '%d', x); fclose(fid); 这次就没有问题了,我们要注意fopne的参数wt 而不是 w,这是matlab的在线帮助的东东 fid = fopen(filename, permission_tmode) on Windows systems, opens the file in text mode instead of binary mode (the default). The permission_tmode argument consists of any of the specifiers shown in the Permission Specifiers table above, followed by the letter t, for example 'rt' or 'wt+. On UNIX?systems, text and binary mode are the same. (UNIX is a registered trademark of The Open Group in the United States and other countries). 就是有两种读取模式binary or text. When choosing the binary model,No characters are given special treatment. 所以我们选择要注明text模式。 2. dlmwrite :将一个矩阵写到由分隔符分割的文件中。 在保存整数到文件时使用save存为ascii文件时,常常是文件里都是实型格式的数据(有小数点,和后面很多的0,看着很不方便)。于是要保存此类数据时,我们可以使用此dlmwrite命令。

数据导入和导出

数据导入和导出_01 数据对象 一、序列(Series) Eviews的序列包含了某个变量的一组观察值。在序列中与每个观察值相关联的是日期或者观察值的标签(序号)。对于工作文件中的日期型序列,假定观察值在整个时间区间上是按特定的时间频率(年、季、月、星期和日中之一)有规则地观察得到的;对于非日期型的序列,则假定观察值不遵从任何特定的频率。 1、建立序列(Creating a series) 建立序列的主要方法有几种。 (1)方法一,选择Object/New Objects再选择序列(series),此时允许给序列命名,或者让新序列记作untitled,点击OK。EViews打开新序列的电子数据表观察,新序列所有观察值被赋给了编码为NA的缺失数据。可以对它们进行编辑,或者用表达式给它们赋值。

(2)方法二,用数学表达式生成序列。点击Quick/Generate Series 并键入定义序列的表达式。这种方法的深入讨论参见:Working with Series。

2、编辑序列(Editing a series) 编辑序列,即对序列中的个别观察值进行编辑。步骤: 第一步,打开序列的电子数据表观察。如果序列的观察不显示为电子数据表观察,点击Sheet按钮或从序列的菜单上选择View/Spreadsheet,将观察改为序列缺省观察——电子数据表观察。 第二步,确保电子数据表观察处于编辑模式下。 EViews允许对电子数据表观察进行保护数据模式与编辑数据模式的设置,通过按压Edit +/-按钮在编辑模式与保护模式之间进行切换。 第三步,更改某一个观察值:在编辑模式下,选择单元格,键入数值,然后按EBTER。 注意,有些单元格始终处于保护模式。如果选择了一个处于保护模式下的单元格,EViews在编辑窗口显示信息:“the cell cannot be edi ted.”。EViews不允许对这类单元进行编辑。 第四步,完成数据编辑以后,还应点击Edit +/-,关闭编辑模式,以免数据受到意外的损害。 3、改变电子数据表的显示格式(Changing the Spreadsheet Display) EViews提供了几种不同的格式,在电子数据表中查看序列中的数据。

MATLAB 基本操作和简单语句输入

实验一基本操作和简单语句输入 一、实验目的和要求 1、熟悉MATLAB的命令窗口 2、掌握MATLAB的一些基本操作,能够进行一般的数值计算 3、实现语句的重调和修改 二、实验内容和步骤 1、启动MATLAB 2、观察MATLAB窗口的组成部分 (1)了解菜单栏各菜单项的功能,用书变打开MA TLAB的各个菜单,在状态栏里显示当前鼠标所指的菜单项的含义 (2)用鼠标指向常用工具栏的每个工具按钮,了解各个工具按钮的含义 3、命令窗口的打开和关闭 (1)查看窗口的打开和关闭 (2)在命令窗口中输入命令a=3;b=4;y=a*b+a/b,然后回车,查看命令显示结果 (3)利用MATLAB中编辑命令行事常用的按键功能,调出上一语句,对它进行修改(如把分号改成逗号,看运行结果),并把运行结果复制到word中保存。 >> a=3;b=4;y=a*b+a/b, y = 12.7500 >> a=3,b=4,y=a*b+a/b, a = 3 b = 4 y = 12.7500 (4)关闭命令窗口

(5)打开命令窗口 4、使用MATLAB帮助 熟悉MATLAB的帮助系统,通过帮助系统了解有关内容 5、在命令窗口中输入demo,将出现MA TLAB的演示窗,通过演示窗,对MATLAB的功能进一步的浏览。 三、试验环境 计算机MA TLAB软件 四、练习 1、调出MATLAB\stateflow的演示实例

2、计算y=x^3+(x-0.98)^2/(x+1.25)^3-5(x+1/x),x=2,x=3时的值 3、计算cos60?-√(9-√2) 4、已知a=3,A=4,b=a^2,B=b^2-1,c=a+A-2B,C=a+B+2c,求C

matlab的各种数据读取(txtdatmat等格式)文件打开关闭

matlab的各种数据读取(txt,dat,mat等格式),文件打开 关闭 MATLAB提供了多种方式从磁盘读入文件或将数据输入到工作空间,即读取数据,又叫导入数据;将工作空间的变量存储到磁盘文件中称为存写数据,又叫导出数据。至于选择哪种机制,则根据下面两个因素决定:●用户所执行的操作是导入数据还是导出数据;●数据的格式为文本格式、二进制格式还是如HDF之类的标准格式。将数据导入MATLAB中最容易的方法就是使用导入数据模板(Import Wizard),使用该模板时不需要知道数据的格式,只需指定包含这些数据的文件,然后导入模板会自动处理文件内容。本章重点内容如下:●文件的打开和关闭●文本文件的读取●存写ASCII数据●二进制数据的读取●二进制数据的存写●使用I/O文件函数进行数据读写●MAT 文件的读写 2.1 文件的打开和关闭2.1.1 文件的打开无论是要读写ASCII码文件还是二进制文件,都必须先用fopen函数将其打开,在默认情况下,fopen以二进制格式打开文件,它的使用语法如下:fopen ('filename', 'mode')其中filename表示要读写的文件名称,mode则表示要对文件进行的处理方式,可以是表2-1中的任一字符串。表2-1 文本文件打开的

模式mode意义rt以只读方式(Reading)打开文件wt以只写方式(Writing)打开文件at以追加方式(Appending)打开文件,新内容将从原文件后面续写r+t以同时读写方式打开文件w+t以同时读写创建文件,原文件内容被清除a+t以同时读和追加(Reading and Appdending)方式,原文件内容被保留,新内容将从原文件的后面开始At以读写方式打开或创建文件,适用于对磁带介质文件的操作Wt以写入方式打开或创建文件,原文件内容被清除,适用于磁带介质文件的操作fopen函数有两个返回值,一个是返回一个文件标志(file Identifier),它会作为参数被传入其他对文件进行读写操作的命令,通常是一个非负的整数,可用此标识来对此文件进行各种处理。如果返回的文件标识是–1,则代表fopen无法打开文件,其原因可能是文件不存在,或是用户无法打开此文件权限。另一个返回值就是message,用于返回无法打开文件的原因。为了安全起见,最好在每次使用fopen函数时,都测试其返回值是否为有效值。下面以脚本m文件为例来声明文件的打开。例 2-1 %exam1.m[f,message]=fopen('fileexam1', 'r')if f==-1disp (message); %显示错误信息end若文件fileexam1不存在,则显示如下信息。Cannot open file.existence?permissions?memory?... 例2-2 %exam2.m[f,message]=fopen('fileexam2', 'r');if

相关文档
最新文档