Remove a part of data and replace it with data to fit trend
조회 수: 2 (최근 30일)
이전 댓글 표시
Hello, can some one please help me with the removal of data in the photo. I tried all the outlier removals, smooth data and conventional funtions, but it is unable to detect.
댓글 수: 2
답변 (1개)
Hiro Yoshino
2022년 1월 10일
Try this. It removes the dent you see in the plot. Please note this also affect the both edges of the profile.
[cleanedData,outlierIndices,thresholdLow,thresholdHigh] = filloutliers(slip1,...
"linear","movmean",29000,"ThresholdFactor",1,"SamplePoints",T1);
It would also be a good idea to detrend first and then find the outliers by using isoutlier.
댓글 수: 1
Hiro Yoshino
2022년 1월 11일
I found a better solution.
- decompose the profile into long-term, short-term and roughness profiles.
- detect outliers in roughness and replace them with other values (linear interpolation in this case)
- re-compose the new roughness back to the long and short profiles together
Here's the code:
[LT, ST, R] = trenddecomp(slip1);
plot(T1,LT,T1,ST,T1,R);
[Rnew,outlierIndices,thresholdLow,thresholdHigh] = filloutliers(R,...
"linear","quartiles","SamplePoints",T1);
slip1New = Rnew + LT + ST;
plot(T1,spring1,T1,slip1New);
참고 항목
카테고리
Help Center 및 File Exchange에서 Multirate Signal Processing에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!