Identify large sudden changes in signal
이전 댓글 표시
Hi, I have a time series with large number of missing values. In certain period the non missing values are wrong (winter surface reflectance values due to polar darkness). I need to identify the point where the sudden change occurs and then again when it returns back to normal and change the affected values in this period to NaN. Just for illustration this is the signal when missing values are interpolated with red ellipses identifying the areas where I have the problem.

For every point in my time series this change occurs at a different time, so i am looking for suggestions how to do this automatically. Example of the original data for one point is in dat_example.mat
댓글 수: 8
Amit
2014년 1월 24일
But the data you have attached has NaN values. Do you have to replace them or remove them?
Image Analyst
2014년 1월 24일
Can you attach a plot where the missing values are NOT interpolated? Wouldn't that be your original, input signal? If they ARE interpolated already (like what you say you are showing), I'm assuming that would be some attempt at fixing the data already.
Also I'm assuming you want the precipitous drop to be on the left side of the large humps only, and to ignore those on the right side, correct? And is there supposed to be one at 1500?
Tereza Smejkalova
2014년 1월 25일
편집: Tereza Smejkalova
2014년 1월 25일
Image Analyst
2014년 1월 25일
Can you show what you'd want the interpolated curves to look like if the interpolation was ideal?
Amit
2014년 1월 25일
Do you want to remove the NaN, interpolate or find where the sudden jumps happening?
Tereza Smejkalova
2014년 1월 27일
편집: Tereza Smejkalova
2014년 1월 27일
Image Analyst
2014년 1월 27일
So there is no reflection when there is "polar darkness" and that's why the values, which were increasing, start decreasing again from 320 to 400? But if there were no polar darkness, those values would have headed up towards 8000? So what you want is to ignore that part, and identify that the start was at index 250, and the end was at index 500? Does that capture it? If so, you don't really need to interpolate the values in between 320 and 400 (invent values for them), so much as to ignore them and just find the 250 and 500. Correct?
afiq mohamad
2018년 11월 8일
you can use 1-d haar transform
답변 (0개)
카테고리
도움말 센터 및 File Exchange에서 Descriptive Statistics에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
