首頁 > 其他

Matlab中如何識別資料物件的屬性?

2019-12-25 21:22:15

    在matlab中,有多種函數指令,有的函數指令適用於多種資料物件(如樹脂、符號等),但是也有一些只是用於某種特定的資料物件。在符號計算和數值計算混合使用的情況下,往往會發生由於函數指令和資料物件不適配而引發的錯誤。為避免這種錯誤發生,我們就要識別資料物件的屬性。本篇經驗就是講述在Matlab中如何識別資料物件的屬性。


1

指令簡介

在matlab中常用於識別資料物件屬性的指令有如下三種,下面一一介紹。

class(var)  給出變數var的資料型別(double、sym等)。

isa(var,'Obj')  若變數var是Obj代表的類別,給出1,表示「真」。

whos  給出所有的matlab記憶體變的屬性。


2

不同資料物件的建立

在matlab中不同資料型別的顯示方式是不同的,下面我們先看一下不同型別矩陣的不同顯示形式。詳細請看下圖:


3

矩陣的大小

下面我們檢視一下上一步中建立的三個矩陣的大小。


4

用class(var)指令獲取矩陣型別

class(var)能給出變數var的資料型別,下面我們就用class指令檢視三個矩陣的資料型別。詳細看下圖:


5

用isa判斷矩陣的類別

從第一步中的isa(var,'Obj')指令功能可知,isa可以判斷變數var是否是Obj代表的類別,若是則給出1,表示「真」,反之則給出0,表示「假」。詳細程式碼看下圖,可以看出class獲得的資料型別與ISA判斷的相一致。


6

用whos檢視記憶體中的變數所有屬性

在記憶體中駐留的變數資料型別可以用whos函數進行檢視,而且可以給出所有變數的所有屬性。詳細結果請看下圖。


7

相關指令「who

出whos之外還有一個相關指令who可以查來看記憶體中的所有變數,結果請看下圖。


8

小結

由以上各步我們可以得出:

1.在我們進行數值計算和符號計算過程中,一定要是函數和變數相適配,否則就會出現錯誤。

2.如果在計算時對變數的型別不清楚,就可以利用本片經驗介紹的相關指令進行檢視,已作出相應的調整。



IT145.com E-mail:sddin#qq.com