當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


R supsmu 弗裏德曼的超級平滑


R語言 supsmu 位於 stats 包(package)。

說明

通過弗裏德曼的“超級平滑”來平滑 (x, y) 值。

用法

supsmu(x, y, wt =, span = "cv", periodic = FALSE, bass = 0, trace = FALSE)

參數

x

用於平滑的 x 值

y

用於平滑的 y 值

wt

案例權重,默認情況下全部相等

span

運行線更平滑的跨度中觀測值的分數,或"cv" 通過留一交叉驗證來選擇它。

periodic

如果 TRUE ,則假定 x 值位於 [0, 1] 中且屬於周期 1。

bass

控製擬合曲線的平滑度。值高達 10 表示平滑度不斷增加。

trace

邏輯,如果為 true,則打印一行信息 “per spar”,對於 "cv" 特別有用。

細節

supsmu 是一個運行線條平滑器,可以在線條的三個跨度之間進行選擇。運行線平滑器是對稱的,預測點兩側都有 k/2 數據點,k 的值為 0.5 * n0.2 * n0.05 * n ,其中 n 是數據點的數量。如果指定span,則使用跨度span * n 的單個平滑器。

通過對每個預測進行交叉驗證來選擇三個平滑器中最好的一個。然後通過運行線平滑器對最佳跨度進行平滑,並通過線性插值選擇最終預測。

FORTRAN 代碼表示:“對於小樣本 (n < 40) 或如果 x-value 附近的觀測值之間存在大量序列相關性,則應使用預先指定的固定跨度平滑器 (span > 0)。合理的跨度值為 0.2 至 0.4。”

具有非有限值 xywt 的情況將被丟棄,並發出警告。

包含組件的列表

x

輸入值按升序排列,並刪除重複項。

y

擬合曲線上相應的 y 值。

例子

require(graphics)

with(cars, {
    plot(speed, dist)
    lines(supsmu(speed, dist))
    lines(supsmu(speed, dist, bass = 7), lty = 2)
    })

參考

Friedman, J. H. (1984) SMART User's Guide. Laboratory for Computational Statistics, Stanford University Technical Report No. 1.

Friedman, J. H. (1984) A variable span scatterplot smoother. Laboratory for Computational Statistics, Stanford University Technical Report No. 5.

也可以看看

ppr

相關用法


注:本文由純淨天空篩選整理自R-devel大神的英文原創作品 Friedman's SuperSmoother。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。