三種陣列是:數值型矩陣,字元陣列(或字串),單元陣列(也有叫元胞陣列)
1、數值型矩陣轉換為字元陣列(num2str、mat2str)
>> a=[1,2,3;4,5,6];
>> b=num2str(a)
b =1 2 3
4 5 6
>> whos
name
size
bytes class
attributes
a 2x3
48 double
b 2x7
28 char
2、字元陣列轉換為數值型(str2num<4位精度》、str2double《雙精度》)
>> b=['123.34'];
>> a=str2num(b)
a = 123.3400
>> whos
name
size
bytes class
attributes
a 1x1
8 double
b 1x6
12 char
3、單元陣列轉換為字元陣列(cell2mat):
例如:>>a=;
>> b=cell2mat(a)
b =sfjsdlgksdgjlsdjgkl
>> whos
name
size
bytes class
attributes
a 1x1
98 cell
b 1x19
38 char
對cell陣列的操作函式
cell
:建立空的元胞陣列
cellfun
:為元胞陣列的每個元胞執行指定的函式
celldisp
:顯示所有元胞的內容
cellplot
:利用圖形方式顯示元胞陣列
cell2mat:將元胞陣列轉變成為普通的矩陣
mat2cell
:將數值矩陣轉變成為元胞陣列
num2cell
:將數值陣列轉變成為元胞陣列
deal
:將輸入引數賦值給輸出
cell2struct
:將元胞陣列轉變成為結構
struct2cell
:將結構轉變為元胞陣列
iscell
:判斷輸入是否為元胞陣列
cellfun
函式的主要功能是對元胞陣列的元素(元胞)分別指定不同的函式,不過,能夠在
cellfun
函式中使用的函式
ushuliang
是有限的。
能在cellfun
中使用的函式:
isempty
:若元胞元素為空,則返回邏輯真
islogical
:若元胞元素為邏輯型別,則返回邏輯真
isreal
:若元胞元素為實數,則返回邏輯真
length
:元胞元素的長
ndims
:元胞元素的維數
prodofsize
:元胞元素包含的元素個數
舉例: a=
a =
[ 123] 'abcde'
[1.0000 - 7.0000i] [3x3 double]
>> b=cellfun('isreal',a)
b =1 1
0 1
>> c=cellfun('length',a)
c =1 5
1 3
4、字元陣列轉換為單元陣列(cellstr)
>>a=['what';'edit';'play'];%注意:用a=生成字元陣列是,必須保證每行有相同的長度,不夠可用空格補
>> b=cellstr(a)
b ='what'
'edit'
'play'
>> whos
name
size
bytes class
attributes
a 3x4
24 char
b 3x1
204 cell
5、單元陣列轉換為數值型矩陣
>> a=;
>> b=cell2mat(a)
b =123.4
>> c=str2num(b)
c = 123.4000
>> whos
name
size
bytes class
attributes
a 1x1
70 cell
b 1x5
10 char
c 1x1
8 double
6、數值型矩陣轉換為單元陣列(num2cell)
>> a=[1,2,3;4,5,6];
>> b=num2cell(a)
b =[1]
[2]
[3][4]
[5]
[6]>> whos
name
size
bytes class
attributes
a 2x3
48 double
b 2x3
408 cell
7、字串陣列、cell細胞元素區別
例1:建立乙個字串陣列,記住補空格
>>s= ['abc '; 'defg';'hi
'] (下劃線代表空格)
s =abc
defg
hi>>whos s
name size bytes class
s 3x4
24 chararray
例2:下面使用cellstr將字元陣列,轉換為3*1的cell細胞元組,此時尾部空格會自動刪除 :
>>c = cellstr(s)
c ='abc'
'defg'
'hi'
>>whos c
name size bytes class
c 3x1
294
cellarray
例3:再使用char函式將cell字串轉換為字元陣列
>>char(c)
ans =
abcdefg
hi>> whos ans
name size bytes class attributes
ans 3x4
24 char
MATLAB資料型別及轉換
matlab的主要資料型別有 整型,浮點型,邏輯,字元,日期和時間,結構陣列,細胞陣列及函式控制代碼等,其中函式控制代碼是matlab所特有的一種資料型別。一 整數型與浮點型 matlab提供了幾種常用整數型資料和浮點型資料的定義函式,如表所示 資料型別 函式類別 儲存空間 整數型int8 有符號8...
Matlab中資料型別轉換函式
資料型別轉換函式 char 字元陣列 cellstr轉換為字元向量元胞陣列 int2str將整數轉換為字元 mat2str將矩陣轉換為字元 num2str將數字轉換為字元陣列 str2double將字串轉換為雙精度值 str2num將字元陣列或字串轉換為數值陣列 native2unicode將數值位...
matlab資料型別
數字 字元與字串 都用單引號 s a str i love matlab machine learning.abs s 絕對值函式,可以用來檢視字元的ascii char 65 ascii轉換成字元 num2str 65 數字轉換成字串 3.矩陣 a 1 2 3 4 5 2 3 2 7 b a 轉置...