ADDING ZEROS to the front of array

68 ビュー (過去 30 日間)
ANDREW LIU
ANDREW LIU 2015 年 7 月 10 日
回答済み: Mohammad Sohail Khan 2017 年 10 月 3 日
May I ask for help
I have two arrays like A=[ 111000 ] & B=[ 1111000 ]
I would like to make A become [0111000],or for example if B=[101111000],A becomes[000111000].
Thank you
  1 件のコメント
Ashmil Mohammed
Ashmil Mohammed 2015 年 7 月 10 日
So you need to add zeros to the beginning of A for every extra element in B?

サインインしてコメントする。

採用された回答

Guillaume
Guillaume 2015 年 7 月 10 日
newA = [zeros(1, max(0, numel(B)-numel(A))), A]

その他の回答 (2 件)

Image Analyst
Image Analyst 2015 年 7 月 10 日
Simply pad the left with zeros if necessary to make them the same length, then AND the vectors. Here it is bot both cases you gave:
% Case #1
A=[1,1,1,0,0,0]
B=[1,1,1,1,0,0,0]
% Make them the same size.
% If A is shorter, prepend zeros
la = length(A)
lb = length(B)
if la < lb
A = [zeros(1, lb-la), A]
end
% Do the operation for case #1:
A = A & B
% Now let's do Case #2
A=[1,1,1,0,0,0]
B=[1,0,1,1,1,1,0,0,0]
% Make them the same size.
% If A is shorter, prepend zeros
la = length(A)
lb = length(B)
if la < lb
A = [zeros(1, lb-la), A]
end
% Do the operation for case #2:
A = A & B

Mohammad Sohail Khan
Mohammad Sohail Khan 2017 年 10 月 3 日
Thank You

カテゴリ

Help Center および File ExchangePerformance and Memory についてさらに検索

タグ

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by