matlab結(jié)構(gòu)體定義 matlab怎么定義結(jié)構(gòu)體
matlab點(diǎn)的類型1/10有符號(hào)整數(shù)型:int8,int16,int32,int64。2/10無(wú)符號(hào)整數(shù)型:uint8,uint16,uint32,uint6。3/1...
matlab點(diǎn)的類型
1/10
有符號(hào)整數(shù)型:int8,int16,int32,int64。
2/10
無(wú)符號(hào)整數(shù)型:uint8,uint16,uint32,uint6。
3/10
單精度浮點(diǎn)型:single
4/10
雙精度浮點(diǎn)型:double
5/10
邏輯型:logical
6/10
字符串型:char
7/10
單元數(shù)組型:cell
8/10
結(jié)構(gòu)體型:struct
9/10
函數(shù)句柄型:function_handle
10/10
在程序中,建立了采用不同數(shù)據(jù)類型的變量,并進(jìn)行輸出??梢栽贛ATLAB命令行窗口輸入whos,可以觀察不同變量的數(shù)據(jù)類型。
Matlab的單元型變量和結(jié)構(gòu)型變量有什么區(qū)別
單元數(shù)組是以矩陣的格式存儲(chǔ)的,可以使用矩陣的運(yùn)算以及諸多內(nèi)置函數(shù)。結(jié)構(gòu)型變量是結(jié)構(gòu)體,很多結(jié)構(gòu)型變量的運(yùn)算都要自己設(shè)定。而且Matlab作為以矩陣為基礎(chǔ)的編程平臺(tái),進(jìn)行矩陣運(yùn)算的速度要快于結(jié)構(gòu)型變量的速度。
MATLAB中struct怎么構(gòu)成2×2
使用struct函數(shù)創(chuàng)建結(jié)構(gòu)
使用struct函數(shù)也可以創(chuàng)建結(jié)構(gòu),該函數(shù)產(chǎn)生或吧其他形式的數(shù)據(jù)轉(zhuǎn)換為結(jié)構(gòu)數(shù)組。
struct的使用格式為:
s=
sturct('field1',values1,'field2',values2,…);//注意引號(hào)
該函數(shù)將生成一個(gè)具有指定字段名和相應(yīng)數(shù)據(jù)的結(jié)構(gòu)數(shù)組,其包含的數(shù)據(jù)values1、valuese2等必須為具有相同維數(shù)的數(shù)據(jù),數(shù)據(jù)的存放位置域其他結(jié)構(gòu)位置一一對(duì)應(yīng)的。對(duì)于struct的賦值用到了元胞數(shù)組。數(shù)組values1、values2等可以是元胞數(shù)組、標(biāo)量元胞單元或者單個(gè)數(shù)值。每個(gè)values的數(shù)據(jù)被賦值給相應(yīng)的field字段。
當(dāng)valuesx為元胞數(shù)組的時(shí)候,生成的結(jié)構(gòu)數(shù)組的維數(shù)與元胞數(shù)組的維數(shù)相同。而在數(shù)據(jù)中不包含元胞的時(shí)候,得到的結(jié)構(gòu)數(shù)組的維數(shù)是1×1的。例如:
s=
struct('type',{'big','little'},'color',{'blue','red'},'x',{3,4})
s=
1x2structarraywithfields:
type
color
x
得到維數(shù)為1×2的結(jié)構(gòu)數(shù)組s,包含了type、color和x共3個(gè)字段。這是因?yàn)樵趕truct函數(shù)中{'big','little'}、{'blue','red'}和{3,4}都是1×2的元胞數(shù)組,可以看到兩個(gè)數(shù)據(jù)成分分別為:
s(1,1)
ans=
type:'big'
color:'blue'
x:3
s(1,2)
ans=
type:'little'
color:'red'
x:4
相應(yīng)的,如果將struct函數(shù)寫成下面的形式:
s=
struct('type',{'big';'little'},'color',{'blue';'red'},'x',{3;4})
s=
2x1structarraywithfields:
type
color
x
則會(huì)得到一個(gè)2×1的結(jié)構(gòu)數(shù)組。
下面給出利用struct構(gòu)建結(jié)構(gòu)數(shù)組的具體實(shí)例。
【例4.3.1-3】利用函數(shù)struct,建立溫室群的數(shù)據(jù)庫(kù)。
(1)struct預(yù)建立空結(jié)構(gòu)數(shù)組方法之一
a=cell(2,3);%創(chuàng)建2×3的元胞數(shù)組
green_house_1=struct('name',a,'volume',a,'parameter',a(1,2))
green_house_1=
2x3structarraywithfields:
name
volume
parameter
(2)struct預(yù)建空結(jié)構(gòu)數(shù)組方法之二
green_house_2=struct('name',a,'volume',[],'parameter',[])
green_house_2=
2x3structarraywithfields:
name
volume
parameter
(3)struct預(yù)建空結(jié)構(gòu)數(shù)組方法之三
green_hopuse_3(2,3)=struct('name',[],'volume',[],'parameter',[])
green_hopuse_3=
2x3structarraywithfields:
name
volume
parameter
(4)struct創(chuàng)建結(jié)構(gòu)數(shù)組方法之四
a1={'六號(hào)房'};a2={'3200立方米'};
green_house_4(2,3)=struct('name',a1,'volume',a2,'parameter',[]);
T6=[31.2,30.4,31.6,28.7;29.7,31.1,30.9,29.6];
green_house_4(2,3).parameter.temperature=T6;
green_house_4
ans=
2x3structarraywithfields:
name
volume
parameter
matlab為什么有R
matlab為有R,因?yàn)槭紫萺是個(gè)結(jié)構(gòu)體,其中有一個(gè)成員變量path_dot.path_dot是一個(gè)數(shù)組這個(gè)函數(shù)的作用是,將結(jié)構(gòu)體r的成員變量path_dot(數(shù)組)相應(yīng)元素進(jìn)行設(shè)置。
具體設(shè)置哪個(gè)元素和設(shè)置什么由dot_index,dot_x,dot_y,type決定。設(shè)置如下:path_dot(1,dot_index)=dot_x;path_dot(2,dot_index)=dot_y;path_dot(3,dot_index)=type。
matlab struct怎么看里面的變量
打開界面,找到數(shù)據(jù)修復(fù),點(diǎn)擊進(jìn)入設(shè)置,找到里面的變量設(shè)置。
點(diǎn)擊進(jìn)入就可以找到看到里面的變量了了
matlab怎么導(dǎo)入excel為struct
用matlab讀或?qū)慹xcel數(shù)據(jù)的方法:%從excel文件中讀數(shù)據(jù)[N,T,rawdata]=xlsread(file,sheet,range)
;%sheet和range可以省略file是excel文件的地址,sheet是excel文件中指定的工作表,range是工作表中要讀取數(shù)據(jù)的范圍N是數(shù)字型數(shù)據(jù),T是文件型數(shù)據(jù),rawdata是所有數(shù)據(jù)(cell型)%將數(shù)據(jù)寫入excel文件xlswrite(filename,A,sheet,range)
;%A就是待寫的數(shù)據(jù)如[N,T,rawdata]=xlsread('d:\tmp.xls','sheet1','a1:b2');xlswrite('d:\tmp.xls',rawdata,'sheet2');%需保證文件'tmp.xls'未被打開winopen('d:\tmp.xls');%打開excel文件
本文鏈接:http:///ruanjian/1648.html