How to display values of an array only in the specified ranges?

3 visualizzazioni (ultimi 30 giorni)
i have [1xm] array of values. i want to display the values only in the ranges given in seperate arrays: lowerlimits=[2 6 10] upperlimits=[4 9 12]
the output is again [1xm] with values of array mentioned in the lower and upperlimts the rest should be zero.

Risposte (1)

KSSV
KSSV il 2 Nov 2016
Modificato: KSSV il 2 Nov 2016
clc; clear al;
m = 100 ;
data = randi([1 50],1,100) ; % random data bewtween 1 and 50
ll = [2 6 10] ; % lower limit
ul = [4 9 12] ; % upper limit
iwant = zeros(size(data)) ; % initialize the array wanted
for i = 1:length(ll) ;
idx = (data>=ll(i) & data<=ul(i)) ; % indices of given range
iwant(idx) = data(idx) ; % replace the indices with the values
end

Categorie

Scopri di più su Numeric Types in Help Center e File Exchange

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by