smoothing datasets containg nan
    6 views (last 30 days)
  
       Show older comments
    
how i can smooth these data :
data=[1  1.927259  
    2  1.519675  
    3  2.553609   
    4  3.138377   
    5  3.6647    
    6  6.6849   
    7  6.937631 
    8  6.087666    
    9  nan 
    10  9.182496  
    11  9.536923   
    12  8.610497  
    13  8.3172   
    14  17.25756
    15  6.725476 
    16  18.0788  
    17  8.0282  
    18  9.9958   
    19  7.063844 
    20  5.164532  
    21  3.5716   
    22  2.296498 
    23  1.757754
    24  1.559203];
0 Comments
Answers (2)
  Les Beckham
      
 on 30 Oct 2023
        Interestingly, the default window size for the 'sgolay' smoothing method in the smoothdata function generates smoothed data that is indistinguishable from the original data in this case.
Below, I've made a slight modification to the answer I gave to your previous question (found here):
I added the window size optional argument to the smoothdata call below.  Adjust as desired.  Or, experiment with other smoothing methods.  See the link above to the documentation.
data=[ ...
1  1.927259  
2  1.519675  
3  2.553609   
4  3.138377   
5  3.6647    
6  6.6849   
7  6.937631 
8  6.087666    
9  nan 
10  9.182496  
11  9.536923   
12  8.610497  
13  8.3172   
14  17.25756
15  6.725476 
16  18.0788  
17  8.0282  
18  9.9958   
19  7.063844 
20  5.164532  
21  3.5716   
22  2.296498 
23  1.757754
24  1.559203];
plot(data(:,1), data(:,2))
hold on
window_size = 8; % <<< experiment with adjusting this to get results that you like
sm_data = smoothdata(data(:,2), 'sgolay', window_size); % save the smoothed data
plot(data(:,1), sm_data)
grid on
legend('original data', 'smoothed data')
Also, please don't close questions minutes after posting them.  Give people a chance to answer them.
7 Comments
  Image Analyst
      
      
 on 30 Oct 2023
				Well the obvious thing to do is to fill the gaps (which you said once that you needed to do), and then after that smooth the data.
  Image Analyst
      
      
 on 30 Oct 2023
        Have you seen the "DataCleaner" app on the Apps tab of the tool ribbon?  Try it.
2 Comments
  Image Analyst
      
      
 on 31 Oct 2023
				
      Edited: Image Analyst
      
      
 on 31 Oct 2023
  
			Yes you do.  It's included in base MATLAB.  Did you go to the Apps tab?  Did you click on the little down arrow on the very right side of the group of all the applet icons?  Look in the group/row called "MATLAB".  See image below.

See Also
Categories
				Find more on Interpolation of 2-D Selections in 3-D Grids in Help Center and File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
