1樓:清覓雲黨語
clear
clca=30;%需要查詢來0的長度,
源可改變
baia=zeros(1,a);
b(1:50)=1;b(51:90)=3;b(91:180)=0;%隨便建立
du一個zhib進行測試dao
i=1;
while
isequal(a,b(i:i+29))~=1i=i+1;
enddisp(i)
2樓:巴霞姝雍滌
如果佔總資料比例不多,先用向量化一次找到全部0,然後再迴圈替換之。
z=find(s==0);
snew=s;
nzero=length(z)
fori=1:nzero
snew(z(i))=snew(z(i)-1);
end****************************************=
注意專到你的資料可能首位0,你屬自己看著改吧。
說實在的,我想不出有什麼更好的辦法,感覺替換迴圈是避免不了的。
但用find一次找出全部0我試了下比直接迴圈找時間只有1/3到1/4。0值少的情況替換工作量不大,所以我這樣處理還有意義。但如果0值多,相當於迴圈沒省還要加額外的1/3時間做了次廢操作提取0.
matlab怎樣將向量變成單位向量
a a b c 求解a的單位陣有兩種方法,一種就是b a norm a 另外一種就是b a sqrt a a 意思是a乘以a的轉置 第二種方法是通用的 單位化可以用 a norm a norm是範數,理論上說是可以的。其實求單位化也很簡單自己也可以寫個 的。向量 a 所對應的單位向量是 a norm...
在用MATLAB算特徵向量的時候出現以下錯誤是什麼原因呢
因為d w矩陣不可逆,條件數為無窮大。可以給它的對角線加點修正量100 eps vc,ev eigs d w eye size d eps 100,d,2,a fix 10 rand 1,10 5 隨機生成一個1x10的向量 a 1 2 10 0 令奇數位都為0 a find a 0 找到a中0的位...
如何用matlab求特徵向量,如何用MATLAB求特徵向量
用eig函式,例如bai b 3 2 9 2 eps 2 4 1 eps eps 4 eps 2 1 0 5 5 1 1 u v eig b u 0.6153 0.4176 0.0000 0.1496 0.7881 0.3261 0.0000 0.1317 0.0000 0.0000 0.0000 ...