How to Remove Anomalous Patterns in Large Dataset ?
4 views (last 30 days)
Show older comments
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.
0 Comments
Answers (1)
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
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?
See Also
Categories
Find more on Data Preprocessing in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!