1 / 11
文档名称:

Matlab中数据结构总结.docx

格式:docx   大小:34KB   页数:11页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

Matlab中数据结构总结.docx

上传人:w447750 2018/10/1 文件大小:34 KB

下载得到文件列表

Matlab中数据结构总结.docx

相关文档

文档介绍

文档介绍:参考链接:心心水滴论坛古木小永
主要数据结构包括数组,字符串,胞,结构体的用法,下面依次介绍
数组
数组的创建
    创建数组的方法有很多,首先先讲一下如何手动去输入一个数组。比如我现在有两组数据,分别对应的是5个被试的身高以及体重,我想身高数据放在第一列,数据位178,167,170,156,182,第二列数据为体重数据,其对应为65,50,63,70,67。我们想把这两组数据存在一个变量Data上,这个时候我们只要在matlab命令框中输入
>>Data = [178,65;167,50;170,63;156,70;182,67]   
à Data=
  178    65
  167    50
  170    63
  156    70
  182    67
这里可以发现对于一堆数据的输入,可以先用一个中括号把所有数据括起来,一行的每个数据用逗号隔开或者可以通过空格,比如下面例子,行与行之间用分号隔开。
Data2 = [1 2 3;4 5 6]
 à Data2=
  1   2 3
  4   5 6
         如果每个数据都需要这样输入,那么会很麻烦,这里就提供了一些简单的方法来输入比较规整的数据。
1.      >>A = 1:5
à   A =
1   2    3     4     5
2.      >>B = 1:2:10   
à  B =
1     3    5     7     9
可以看到如果我们想输入一列数据,并且这些数据是以等差数列的方式排布,我们就可以用a:b:c这样的形式来写,意思就是从a开始,每隔b有一个数据,然后写直到不大于c这样一组数。当然其中b可以省略,省略默认b的值为1。
数组的合并(这里要用到上面的A,B变量)
>> C = [A;B]   
à C =
    1     2     3    4     5
    1     3     5    7     9
>>D = [A,B]
à D =
    1     2     3    4     5     1    3     5     7    9
%其中A和B都是一个数组,如果其能保证对齐,那么这些数组是可以合并的,就好像上面的两条命令。可以发现如果用分号,那么合并的情况是以列的方式合并,如果用逗号,那么是以行的方式合并,这个和手动输入数组是一致的,只不过把前面的数字当成数组来操作就可以了。
数组内部数据的取得(这里要用到前面的Data变量)
         输入的方法我们有了,但我们如何来取出一个数据呢?先看看命令
>>Data(4,1)   à   ans = 156
如何取出一行数据
>>Data(3,:)   à   ans =  170    63
%和上面所说的一样,前面那个数代表行数,后面如果我们想取所有的数据,只需要在逗号后面写1:end就可以了,也就是第三行的对应的第一列到最后一列的数据,可以简写为一个冒号。同理比如取出第一列的数据可以写成
>>Data(1:end,1)  或者 Data(:,1)
但我们有的时候不希望取出一整列的数据,而是想选出某列当中的几行数据,这个时候我们就可以发现其实数据取得前面是管行,后面是管列,并且看到1:end这个就可以联想到我们前面所演示的如何输入规整的数组。说白了这个1:end其实就是一个数组,如果是这样,我们就可以以此类推,如果我想输出第二列的第一,三,五行数据,那么命令就是
>>Data([1,3,5],2)
%输出的结果我就不演示了,大家可以尝试一下。
数组内部数据的修改以及增添
同样我们可以用上面的Data变量,比如我现在发现我在Data里面有个数据是错的,比如第4行的第二个数据觉得有问题,通过查看我们原始的数据发现第四个人的体重不是70而是50,那么我们就需要修改原始的数据。如果重新输入一遍那就太蛋疼了,所以修改数据是非常关键的。有了上面的一些经验,我们来看看如何修改这个数据
>> Data(4,2) = 50
à Data =
  178    65
  167    50
  170    63
  156    50
  182    67
%在这里我们发现Data数据变了。如果我们想改一行数据,比如第三行数据应该是180,61,命令是
>> Data(3,:) = [180,61]
à Data =
  178    65
  167    50
  180    61
  156    50
  182    67
%这里要注意我们要改写一行,一列数组,那么后面的数据尺寸一定要和前面那行