construct a vector formed by arrays of different lengths

2 Ansichten (letzte 30 Tage)
EldaEbrithil
EldaEbrithil am 2 Sep. 2020
Kommentiert: KSSV am 2 Sep. 2020
Hi all
i want to built a vector using multiple arrays with different length. First of all with thi code
a=zeros(100000,sum(c));
for i=1:3
a(i,:)=b(i)*ones(1,c(i));
end
with this code i want to built a 3xsum( c) matrix. b has the same dimension of c but c has different lengths!! So when multiplied with b give different lengths of a. I want to join neatly the three vector a obtained; how can i do that?
Thank you for the help!!
Regards
  3 Kommentare
KSSV
KSSV am 2 Sep. 2020
what is c? in a there are 3 rows, but you initiated it with 100000 rows.
EldaEbrithil
EldaEbrithil am 2 Sep. 2020
b is an array with 3 components
c is an array with 3 component which has value:[101,17,1]
i want to obatin
a1=b1-1,b1-2,b1-3,b1-4,.....b1-101
a2=b2-1,b2-2,b2-3,b2-4,.....b2-17
a3=b3-1
and then obtain a=[a1,a2,a3]

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

KSSV
KSSV am 2 Sep. 2020
a=cell(3,1);
for i=1:3
a{i}=b(i)*ones(1,c(i));
end
  4 Kommentare
EldaEbrithil
EldaEbrithil am 2 Sep. 2020
Bearbeitet: EldaEbrithil am 2 Sep. 2020
Ok solved with this
Acell=vertcat(a{:});
KSSV
KSSV am 2 Sep. 2020
yes use vertcat or cell2mat.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Creating and Concatenating Matrices finden Sie in Help Center und File Exchange

Produkte


Version

R2019a

Community Treasure Hunt

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

Start Hunting!

Translated by