concatenate matrices into one

Hello everyone! I have 180 matrices, 19*330, the are stored as mat files (B1C1,B1C2.....B1C15,B2C1,...,B2C15,...,B12C1,....,B12C15). I want to concatenate them into one matrix 180*19 by 330. does any one how can I do that?

3 Commenti

How your matrices are stored?
Sophi gra
Sophi gra il 19 Lug 2016
Modificato: Azzi Abdelmalek il 19 Lug 2016
they are in mat file! their names are
B1C1,B1C2.....B1C15,B2C1,...,B2C15,...,B12C1,....,B12C15
Please edit your question, don't let people guess what you are asking for!

Risposte (1)

Azzi Abdelmalek
Azzi Abdelmalek il 19 Lug 2016
Modificato: Azzi Abdelmalek il 19 Lug 2016
M=[]
for ii=1:15
for jj=1:12
name=sprintf('B%dC%d',ii,jj)
s=load(name)
n=fieldnames(s)
M=[M;s.n]
end
end

8 Commenti

Sophi gra
Sophi gra il 19 Lug 2016
the problem is I don't want to write down all matrices
Look at edited answer
Sophi gra
Sophi gra il 19 Lug 2016
isn't it possible to have one matrix 19*180 by 300?
Azzi Abdelmalek
Azzi Abdelmalek il 19 Lug 2016
Modificato: Azzi Abdelmalek il 19 Lug 2016
M=zeros(19,330,180);
k=00
for ii=1:15
for jj=1:12
k=k+1
name=sprintf('B%dC%d',ii,jj)
s=load(name)
n=fieldnames(s)
M(:,:,k)=s.n
end
end
Sophi gra
Sophi gra il 20 Lug 2016
thanks! but unfortunately I have got an error in reading the 'name'!
Maybe you need to specify the location of your files
Sophi gra
Sophi gra il 20 Lug 2016
the problem is there are a huge number of matrices! even if I write them in a loop it will not give me a matrix 180*19 by 330!
Sophi gra
Sophi gra il 20 Lug 2016
@aziz abdelmalek, thanks for taking your time! I will try that

Questa domanda è chiusa.

Richiesto:

il 19 Lug 2016

Chiuso:

il 20 Ago 2021

Community Treasure Hunt

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

Start Hunting!

Translated by