Clear Filters
Clear Filters

How to Remove Anomalous Patterns in Large Dataset ?

1 view (last 30 days)
Q: how can I best remove anomolous data (anomolous trend in data) as shown in the attached plot (upper left)? The dataset is a raw 1-sec to 30-sec retimed noise matrix LAeq (sound pressure levels, dBA) vs. a Low Frequency sound vector (25-125Hz). 12MM data points in the raw file, 389K data points in the retimed file. Thanks for any help.

Answers (1)

Image Analyst
Image Analyst on 18 Jun 2022
I'd sort your data by x value then scan it with a window to find the upper most data point in the window. I'd then fit a line to those upper points and delete any data points above a line shift just a little bit below that line. movmax might work. Then deed into polyfit(x,y,1). Otherwise if there are spurious points in the upper line, I'd use RANSAC: fitPolynomialRANSAC I'd I'd have tried something but unfortunately you didn't read the posting guidelines and you forgot to attach your actual data. Maybe I'll check back later.
If you have any more questions, then attach your data and code to read it in with the paperclip icon after you read this:
  4 Comments
Image Analyst
Image Analyst on 13 Jul 2022
If you don't have data there, and it's so noisy, then why try to interpolate it? Just delete it or set it to nan. Why does it need to be some value?

Sign in to comment.

Products

Community Treasure Hunt

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

Start Hunting!