How can i get sub matrices with using for loop
Afficher commentaires plus anciens
Hello everyone
I have a matrix A as:
A=[1
1
1
1
1
1
1
1
1
1
2
2
2
2
2
2
2
2
2
2
3
3
3
3
3
4
4
4
4
4
5
5
5
5
5
6
6
6
6
6
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
8
8
8
9
9
9
9
9
9
9
9
9
9
10
10
10
10
10
10
10
10
10
10
11
11
11
11
11
11
11
11
11
11
12
12
12
12
12
12
12
12
12
12]
I get unique(A) as 12. And then i want to get new matrices as
for i=1, A(1) as row which is equal to i. And for i=2, A(2) as row which is equal to i.............for i=12 A(12) as rows which is equal to i.
For example:
A(1)=[1
1
1
1
1
1
1
1
1
1]
A(2)=[2
2
2
2
2
2
2
2
2
2]
A(3)=[3
3
3
3
3]
........
A(12)=[12
12
12
12
12
12
12
12
12
12]
How can i do this with using for loop or another way? I want to get new matrices as A(1) to A(12).
Réponse acceptée
Plus de réponses (1)
madhan ravi
le 17 Sep 2019
a=arrayfun(@(x)A(A==unique(x)),A,'un',0)
celldisp(a)
If you’re goal is simply to create A with repetitions of 10 then it’s simply:
A = num2cell(repmat(1:12,10,1),1)
celldisp(A)
3 commentaires
Mooner Land
le 17 Sep 2019
madhan ravi
le 18 Sep 2019
How's this related to the question you originally asked?
Mooner Land
le 18 Sep 2019
Catégories
En savoir plus sur Loops and Conditional Statements dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!