Removing rows from a column depending on another column
Mostra commenti meno recenti
Hello,
I need a little bit of help with this problem. I will explain it the best I can then give a basic example below. Basically I have two column vectors. I am trying to split one of them up depending on the other. Basically I have:
Cp=[0;0.2;0.4;0.6;0.8;1;1.2;1.4];
Cf=[0;1;2;3;4;5;6;7;8];
I am trying to split up Cf depending on when Cp hits 1. So essentially, when Cp<=1 I am trying to obtain a column for Cf with only those values. So the resultant Cf would be:
Cf_new=[0;1;2;3;4;5]
So the only values obtained for Cf are when the corresponding row of Cp is less than or equal to 1. I hope this makes sense. Thank you
Risposta accettata
Più risposte (2)
the cyclist
il 8 Set 2013
Cf_new = Cf(Cp<=1);
4 Commenti
Christopher
il 8 Set 2013
Azzi Abdelmalek
il 8 Set 2013
Adapt your code to 0.99 instead of 1
Christopher
il 8 Set 2013
Image Analyst
il 8 Set 2013
That's a different question than you first asked. How are you defining "peak"? There is a findpeaks() function in the Signal Processing Toolbox. Or else you could just call diff(Cp) and look for the first negative value - it just depends on how you want to define a "Peak."
Andrei Bobrov
il 8 Set 2013
Modificato: Andrei Bobrov
il 8 Set 2013
out = Cf(1:find(Cp>=.99,1,'first'));
Categorie
Scopri di più su Descriptive Statistics in Centro assistenza e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!