Call one array from a large array made up of several others

1 visualizzazione (ultimi 30 giorni)
I've got an array, say Z, made up of 4 smaller 2x2 ones, say A, B, C and D:
Z = a11 a12 b11 b12
a21 a22 b21 b22
c11 c12 d11 d12
c21 c22 d21 d22
Once I've created Z, is there a way to ask matlab for, for example, the first entry in each of A, B, C and D, based only on Z? I can call individual entries from it fine (e.g. the value at the 4th row, 3rd column), but would like to be able to store my data in one array and still treat it as individual arrays for some things.

Risposta accettata

sixwwwwww il 5 Dic 2013
you can do it fi you store your arrays A, B, C and D in cell array Z as follows:
Z = {A, B, C, D};
then you can treat A, B, C and D individually by using cell indexing
  3 Commenti
Jennifer il 5 Dic 2013
Thank you! I hadn't come across the disp(Z{1}) part before, it works now

Accedi per commentare.

Più risposte (1)

Matt J
Matt J il 5 Dic 2013
Modificato: Matt J il 5 Dic 2013
  2 Commenti
Matt J
Matt J il 5 Dic 2013
Here are some examples,
>> Z=10*reshape(1:16,4,4)'
Z =
10 20 30 40
50 60 70 80
90 100 110 120
130 140 150 160
>> Z([1,3],[1,3])
ans =
10 30
90 110
>> Z([2,4],[2,3])
ans =
60 70
140 150

Accedi per commentare.


Scopri di più su Matrices and Arrays in Help Center e File Exchange


Community Treasure Hunt

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

Start Hunting!

Translated by