matlab筆記 邏輯向量

2021-08-25 05:14:11 字數 1479 閱讀 8971

向量包含在邏輯表示式中時,比較是以逐元素的方式進行的。結果也是向量。

繪製y=sin(x)在一定範圍內x軸上方的部分(非負部分)**如下:

x=0:pi/20:3*pi;

y=sin(x);

y=y.*(y>0);

plot(x,y)

繪製y=sin(x)/x,x在[-4π,4π]之間,**如下:

x=-4*pi:pi/20:4*pi;

x=x+(x==0)*eps; %式子中的(x==0)x可用(~x)代替

y=sin(x)./x;

plot(x,y)

y=tan(x),x趨於π/2時y趨於無窮。為了捨去無窮的情況,以免因為y軸範圍太大使得無法顯示應有的圖形,應對y做處理,如`y=y.*(abs(y)<1e+10)。

%若用for迴圈,則時間很長

r=rand(1:10000);

sum(r<0.5)

r=floor(6*rand(1,20))+1;

a = [123

45];

v = [110

01];

a(logical(v)) %顯示125

a(logical([100

00])) %顯示1。若1後面全為0,也可以0省略掉,結果相同。

%書上說,v與a必須行數列數相同。但我做的實驗證明不是這樣。

%以行向量舉例,如果邏輯向量最後乙個1後面均為0

%後面的0可以不寫

a=a(a>0)移除a中非正的元素。

邏輯向量可以代替elseif。

詳見help。

any(x)x中任意元素為真,返回1

all(x)x中所有元素為真,返回1

exist('a')a是乙個工作空間變數,返回1

find(x)返回由x中非零元素的下標組成的向量

isempty(x)x為0*0的陣列,返回1

isinf(x)x中等於+inf或-inf的元素,返回1

isnan(x)對於x中尉nan的元素,返回1

%if中用來比較的兩個向量行數與列數需相同

%a與b中所有元素都相等,if成立

if a==b

statement;

end%a與b中每乙個對應的元素都不相等,if才成立

if a~=b

statement;

end%a與b這兩個向量不相同,if成立

if any(a~=b)

statement;

end

r語言邏輯向量相加 R語言學習筆記 向量

本章命令小結 x 建立向量並賦值給xc 數值,數值,數值 c 字串 字串 字串 c true,false,t,f c 1 100 冒號表示等差數列,1 100是1到100的等差數列 公差為1 seq from 起始值,to 終止值,by 公差 建立等差數seq from 起始值,to 終止值,len...

matlab 邏輯函式

all 向量中是否所有分量均非零 any 是否有元素非零 exist 指定變數或檔案是否存在 find 返回矩陣中非零元素的索引和置 is is系列,大部分根據名稱可以知道功能 iscell iscellstr isempty 是否空陣列 isequal 陣列是否相等 isfield 是否結構陣列中...

matlab邏輯型別

matlab邏輯表示式輸出 1為真,0為假。關係操作符 說明 小於 小於等於 大於 大於等於 等於 不等於 注意 不等於式 而不是 用關係操作符來表示兩個陣列的大小 兩個陣列比較 兩個陣列的長度必須一致 matlab將對陣列的每乙個對應位置的元素進行比較,1為真,0為假。a 1 9 a 1 2 3 ...