Referencing value of an array based on the values of another

2 visualizaciones (últimos 30 días)
SB
SB el 12 de Sept. de 2019
Editada: Walter Roberson el 12 de Sept. de 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?

Respuesta aceptada

Walter Roberson
Walter Roberson el 12 de Sept. de 2019
Editada: Walter Roberson el 12 de Sept. de 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))

Más respuestas (0)

Categorías

Más información sobre Shifting and Sorting Matrices en Help Center y File Exchange.

Etiquetas

Productos


Versión

R2017a

Community Treasure Hunt

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

Start Hunting!

Translated by