Remove a part of data and replace it with data to fit trend
1 visualización (últimos 30 días)
Mostrar comentarios más antiguos
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.
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/858335/image.jpeg)
2 comentarios
Respuestas (1)
Hiro Yoshino
el 10 de En. de 2022
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 comentario
Hiro Yoshino
el 11 de En. de 2022
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);
Ver también
Categorías
Más información sobre Data Preprocessing en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!