How to find corresponding value in two arrays?

1 Ansicht (letzte 30 Tage)
Andrejus
Andrejus am 22 Okt. 2014
Bearbeitet: Andrejus am 22 Okt. 2014
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

Akzeptierte Antwort

Chad Greene
Chad Greene am 22 Okt. 2014
Bearbeitet: Chad Greene am 22 Okt. 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 Kommentar
Andrejus
Andrejus am 22 Okt. 2014
Bearbeitet: Andrejus am 22 Okt. 2014
Thanks, that worked great. I have spent 2 days for this and you solved easily. Super thanks!

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Performance and Memory finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by