函數 > 數據分析 > 平滑 > 範例:平滑處理 X-Y 數據
範例:平滑處理 X-Y 數據
使用 ksmoothmedsmoothsupsmooth 函數可平滑處理 x-y 數據。而使用 movavg 函數則可透過採用移動平均線與特定寬度的窗,平滑處理數據。
1. 定義矩陣,第一欄中的值為 x,第二欄中的值為 y
按一下以複製此運算式
2. 以遞升排序來排序欄 0。
按一下以複製此運算式
按一下以複製此運算式
按一下以複製此運算式
ksmooth
ksmooth 使用高斯核與頻寬 b,傳回 vy 的局部加權平均值的向量;可控制平滑窗。
通常會依照所需要的平滑度,將頻寬 b 設定成 x 軸上數據點之間間隔的數倍。頻寬越大,所得出的曲線越平滑。
1. b 設為介於 X 最小值與最大值之間的值。
按一下以複製此運算式
按一下以複製此運算式
按一下以複製此運算式
2. 計算 ksmooth 函數。
按一下以複製此運算式
3. 繪製 ksmooth 函數。
按一下以複製此運算式
選取頻寬時請務必謹慎。頻寬過大會使得細節不見,因為它會平均整個數據集。頻寬過小會在經過平滑處理的數據中建立人工的細節。嘗試將以上的 b 變更為介於 0.01 與 2 之間的數值,以檢視這些效果。
medsmooth
medsmoothvy 中各值都以對準該值中央 n 點的中值取代,即可傳回平滑向量。
平滑窗引數 n 必須是奇整數。
1. n 定義為奇整數。
按一下以複製此運算式
2. 計算 medsmooth 函數。
按一下以複製此運算式
3. 繪製 medsmooth 函數。
按一下以複製此運算式
supsmooth
supsmooth 不需要其他引數。
1. 計算 supsmooth 函數。
按一下以複製此運算式
按一下以複製此運算式
比較以上三組平滑數據與原始數據。
movavg
1. 設定窗寬度。
按一下以複製此運算式
窗愈寬,所得出的曲線愈平滑。數據點數計算求得為 100。
2. 計算 movavg 函數。
按一下以複製此運算式
3. 繪製 movavg 函數。
按一下以複製此運算式
視原始數據變異量之不同,以上其中一個平滑函數可能比其他函數更適合產生所需的平滑數據。
這是否有幫助?