Effacer les filtres
Effacer les filtres

Referencing value of an array based on the values of another

5 vues (au cours des 30 derniers jours)
SB
SB le 12 Sep 2019
I have an array d = [0,1000,2000]. Based on this array, I compute the value of another array, let's say J = [0,5000,8000], where J = 3*d+2000.
Now, during iteration using a for loop, if d=0, I want to extract value of J(1); if d = 1000, then I want to extract values of J(1) and J(2); if d = 2000, I want to extract values of J(1),J(2) and J(3). What would be a generic way to cross reference values of two arrays?

Réponse acceptée

Walter Roberson
Walter Roberson le 12 Sep 2019
Modifié(e) : Walter Roberson le 12 Sep 2019
[~, idx] = ismember(current_d, list_of_d);
J(1:idx)
If your permitted d are sorted, then
J(1:cumsum(current_d <= list_of_d))

Plus de réponses (0)

Catégories

En savoir plus sur Shifting and Sorting Matrices dans Help Center et File Exchange

Tags

Produits


Version

R2017a

Community Treasure Hunt

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

Start Hunting!

Translated by