How to use filloutliers for only positive numbers of a data array?

1 Ansicht (letzte 30 Tage)
so if data is stored in Variable 'a'
a = [ 2 1 23 -1 2 5 -36 6 -1]
so it should perform filloutliers only on positve number
when i use b = filloutlier(a) it repalces both '23' and '-36' but i wish it should only perform functionallity on positve number that is '23' and ignore negative numbers.
one method is to filter the data and stored them in a seperate variable or secondly we can remove negative values but because variable 'a' is accessed on many occasions in code so want to perform this on variable 'a' instead of a new variable,
Lets say if i do a(a<0) = 0,
then b = filloutlier(a,'Linear');
it give filloutlier of only positive numbers but my orignal data is change..
kindly suggest a solution... if i again summarize my question basically i want to remove only positve peaks in my data...

Akzeptierte Antwort

Ameer Hamza
Ameer Hamza am 20 Nov. 2020
Try this
a = [ 2 1 23 -1 2 5 -36 6 -1]
a(a>0) = filloutliers(a(a>0),'Linear')

Weitere Antworten (0)

Kategorien

Mehr zu Weather and Atmospheric Science finden Sie in Help Center und File Exchange

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by