matlab如何把向量中的各元素轉換成數?要高效的

2021-03-09 22:07:35 字數 1964 閱讀 5639

1樓:匿名使用者

樓上的方法都很好抄,謝謝bai大家")這個問題的起源是想判斷一個迴圈,du當zhi向量a中的元素不全為dao1時執行while 迴圈,a中只有0、1、2這三類資料。例如,初始時a=[1 2 0 1 0],但是我用(while a~=1)或者(while a~=[1 1 1 1 1])時程式根本不執行while中的語句,所以才想把a轉換成數字12010,這樣可以直接跟11111進行比較。下面這個語句倒是可以用(while not(all(a==1))),但是總感覺效率不高(a的維數大概是500),不知道這條語句跟上面轉換成數字後進行比較的方法相比哪種方法的效率高?

請問有沒有其它好的辦法啊?

2樓:匿名使用者

樓上來的方法可以解決你提自

的問題,如果陣列中含有個位以

上的,可以用下面的方法:a=randi(100,[1,3]);b=;for i=1:length(a) b=strcat(b,num2str(a(i)));enda=str2num(b)

3樓:匿名使用者

a=[1 2 0 1 0];b=sum(a.*fliplr(logspace(0,length(a)-1,length(a))))

matlab中如何把一串十六進位制常數轉換為二進位制然後將每位依次賦值給向量中的每個元素?

4樓:楊好巨蟹座

[number,cellstr]=textread('a.hex',':%8d%s'); %number為昌號後面的八位二進位制,cellstr為後續的十六進位制陣列成的字串細胞元

str=cell2mat(cellstr); %細胞元轉為矩陣

str=reshape(str',1,numel(str)); %轉為一行,你的例子給出的是6列

data=sscanf(str,'%4x');

data_new=bitand(data,hex2dec('3fff')); %忽略頭2位

[dec2bin(data,16),repmat(' ',26,1),dec2bin(data_new,16)]

5樓:匿名使用者

將十六進位制常數f轉為十進位制數,再使用bitget()函式即可,望採納>> a=hex2dec('f')

a =15

>> b=dec2bin(a)

b =1111

>> xbin=bitget(a,4:-1:1)xbin =

1     1     1     1

matlab 如何將一個向量作為一個元素輸出

6樓:匿名使用者

將多個bai數放在一個du單元裡面

那麼單zhi元裡面只能

是字元型別

就是要dao先把資料專

轉化為字串,然後屬寫到一格里面

>> b=[3 5 7 11 20 22 24 32];

>> c=num2str(b);

>> xlswrite('g:\1.xlsx',,'sheet1','b6');

7樓:匿名使用者

作為一個元素輸出的意義何在??

matlab怎麼把一個數轉化為行向量

8樓:匿名使用者

小程抄序如襲下:

a=11011;

for i=1:length(num2str(a))b(i)=mod(a,10); a=floor(a/10);

endb=b(end:-1:1)

-----------------------------------------

輸出結果:b = 1 1 0 1 1

9樓:匿名使用者

用num2str將其轉成符號向量

matlab中如何利用向量作為矩陣索引訪問相應元素

n維矩陣有兩個下標,n維向量只能提供一個下標。當然你可以採用單下標訪問方式。比如a a 顯示的結果是a矩陣的第1,3,4 個元素 而a 1,a 顯示的是a 1,1 a 1,3 a 1,4 的結果。matlab中陣列元素引用有三種方法 1.下標法 subscripts 2.索引法 index 3.布林...

matlab中,如何向向量中寫入字串?並且這個向量可以

還在弄這個問題呢,我試了cell型別好像不需要預先指定大小啊for i 1 n str filename i name end matlab如何將一個向量賦給一個字串 用來替換向量的名字 舉個例子 b rand 1,110 for i 1 11 eval sprintf x 03d b d d i,...

matlab向量中怎樣鎖定某數值的位置

用find函式,可以給出該值在這個向量中的位置 matlab中如何給一個矩陣中的某幾個特定位置賦值 用sub2ind a zeros 5 i 2 3 4 j 1 4 2 a sub2ind size a i,j 1 a 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 1 0 0 0 ...