how get it?

2 visualizzazioni (ultimi 30 giorni)
Luca Re
Luca Re il 7 Ott 2023
Risposto: Walter Roberson il 8 Ott 2023
a=magic(5)
a = 5×5
17 24 1 8 15 23 5 7 14 16 4 6 13 20 22 10 12 19 21 3 11 18 25 2 9
b=[1 3 2 4 5]
b = 1×5
1 3 2 4 5
i want to get:
in 1 column i want to 1 element
in 2 column i want to 3 element
in 3 column i want to 2 element
in 4 column i want to 4 element
in 5 column i want to 5 element
ans:
17 6 7 21 9

Risposta accettata

Walter Roberson
Walter Roberson il 8 Ott 2023
a=magic(5)
a = 5×5
17 24 1 8 15 23 5 7 14 16 4 6 13 20 22 10 12 19 21 3 11 18 25 2 9
b=[1 3 2 4 5]
b = 1×5
1 3 2 4 5
v = a(sub2ind(size(a), b, 1:size(a,2)))
v = 1×5
17 6 7 21 9

Più risposte (1)

Torsten
Torsten il 7 Ott 2023
Modificato: Torsten il 7 Ott 2023
a = magic(5)
a = 5×5
17 24 1 8 15 23 5 7 14 16 4 6 13 20 22 10 12 19 21 3 11 18 25 2 9
b = [1 3 2 4 5]
b = 1×5
1 3 2 4 5
v = arrayfun(@(i)a(b(i),i),1:size(a,2))
v = 1×5
17 6 7 21 9

Categorie

Scopri di più su MATLAB Compiler in Help Center e File Exchange

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by