How to find corresponding value in two arrays?

2 visualizzazioni (ultimi 30 giorni)
Hi,
I have to data arrays, A and B. I want to knwo how it is possible to find corresponding number or value of the element in B array when accumulation in A array reaches certain value? Basically, I want to elements in array A until the sum reaches prescribed value. Then I need to know what was the corresponding value in B array when the condition is met. How can I do this? Cannot find a way my own...
Thanks

Risposta accettata

Chad Greene
Chad Greene il 22 Ott 2014
Modificato: Chad Greene il 22 Ott 2014
A = rand(1,100);
B = rand(1,100);
MyBElements = B(cumsum(A)<10)
Above, MyBElements is all the elements in B until the cumulative sum of A reaches 10.
Plotting the cumulative sum of A, a threshold at 10, and the individual elements of A, B, and MyBElements can be done like this:
figure;
subplot(2,1,1)
plot(cumsum(A));
hold on
plot([1 100],[10 10],'r')
axis tight
title('cumulative sum of A')
subplot(2,1,2)
plot(1:100,A,'b+',1:100,B,'rx')
hold on
box off
plot(MyBElements,'ro')
legend('A','B','MyB')
  1 Commento
Andrejus
Andrejus il 22 Ott 2014
Modificato: Andrejus il 22 Ott 2014
Thanks, that worked great. I have spent 2 days for this and you solved easily. Super thanks!

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Line Plots 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