Join elements of an array

If I have two array
a=[1 2 3 0]
b=[0 0 5 4]
and I want the array c=[1 2 3 4] How should I proceed?
In other words I want a array c in which the element of array a==0 is replaced with the element of matrix b.

1 件のコメント

Image Analyst
Image Analyst 2015 年 7 月 12 日
What happened to the 5? Why did you leave that out of c?

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

回答 (1 件)

Azzi Abdelmalek
Azzi Abdelmalek 2015 年 7 月 12 日
編集済み: Azzi Abdelmalek 2015 年 7 月 12 日

0 投票

a=[1 2 3 0]
b=[0 0 5 4]
idx=a==0
bb=sort(nonzeros(b))
a(idx)=bb(1:sum(idx))

2 件のコメント

fede
fede 2015 年 7 月 12 日
編集済み: Azzi Abdelmalek 2015 年 7 月 12 日
mmmm but if i want a general formula? I have two arrays of prices.
a=[p1 p2 p3 0 0 0 ....]
b=[0 0 p3 p4 p5 0 0....]
and I want join the two arrays to obtain a array c in which I have
c=[p1 p2 p3 p4 p5]
Azzi Abdelmalek
Azzi Abdelmalek 2015 年 7 月 12 日
Have you tried my code?

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

カテゴリ

ヘルプ センター および File ExchangeResizing and Reshaping Matrices についてさらに検索

質問済み:

2015 年 7 月 12 日

コメント済み:

2015 年 7 月 12 日

Community Treasure Hunt

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

Start Hunting!

Translated by