smooth
位於 stats
包(package)。 說明
Tukey 的平滑器、3RS3R、3RSS、3R 等。
用法
smooth(x, kind = c("3RS3R", "3RSS", "3RSR", "3R", "3", "S"),
twiceit = FALSE, endrule = c("Tukey", "copy"), do.ends = FALSE)
參數
x |
向量或時間序列 |
kind |
指示所需平滑類型的字符串;默認為 |
twiceit |
邏輯,指示結果是否應該是‘twiced’。將平滑器 加倍意味著 ,即將平滑殘差添加到平滑值中。這會減少偏差(增加方差)。 |
endrule |
表示邊界平滑規則的字符串。 |
do.ends |
邏輯上,表明關係的 3 分割是否也應該發生在邊界(末端)。這僅用於 |
細節
3
是 Tukey 的跑步縮寫median
長度s3,
3R
代表R重複3
直到收斂,並且
S
為了S長度為 2 或 3 的水平延伸的分裂。
因此,3RS3R
是一個串聯3R
,S
和3R
,3RSS
類似地,而3RSR
意味著首先3R
接著(S and 3)
重複直到收斂——這可能很糟糕。
值
"tukeysmooth"
類的對象(具有 print
和 summary
方法),是包含具有附加屬性的平滑值的向量或時間序列。
注意
S 和 S-PLUS 在 smooth(*)
中使用不同的(更好一些)Tukey 平滑器。請注意,還有其他平滑方法可以提供更好的結果。這些是為手工計算而設計的,主要用於教學目的。
自從R1.2版,smooth
做真正正確地執行 Tukey 的 end-point 規則(參見參數endrule
)。
kind = "3RSR"
一直是默認的直到R-1.1,但它可能具有非常糟糕的屬性,請參閱示例。
請注意,對於 "3RS*"
類型,重複應用 smooth(*)
會更加平滑。
例子
require(graphics)
## see also demo(smooth) !
x1 <- c(4, 1, 3, 6, 6, 4, 1, 6, 2, 4, 2) # very artificial
(x3R <- smooth(x1, "3R")) # 2 iterations of "3"
smooth(x3R, kind = "S")
sm.3RS <- function(x, ...)
smooth(smooth(x, "3R", ...), "S", ...)
y <- c(1, 1, 19:1)
plot(y, main = "misbehaviour of \"3RSR\"", col.main = 3)
lines(sm.3RS(y))
lines(smooth(y))
lines(smooth(y, "3RSR"), col = 3, lwd = 2) # the horror
x <- c(8:10, 10, 0, 0, 9, 9)
plot(x, main = "breakdown of 3R and S and hence 3RSS")
matlines(cbind(smooth(x, "3R"), smooth(x, "S"), smooth(x, "3RSS"), smooth(x)))
presidents[is.na(presidents)] <- 0 # silly
summary(sm3 <- smooth(presidents, "3R"))
summary(sm2 <- smooth(presidents,"3RSS"))
summary(sm <- smooth(presidents))
all.equal(c(sm2), c(smooth(smooth(sm3, "S"), "S"))) # 3RSS === 3R S S
all.equal(c(sm), c(smooth(smooth(sm3, "S"), "3R"))) # 3RS3R === 3R S 3R
plot(presidents, main = "smooth(presidents0, *) : 3R and default 3RS3R")
lines(sm3, col = 3, lwd = 1.5)
lines(sm, col = 2, lwd = 1.25)
參考
Tukey, J. W. (1977). Exploratory Data Analysis, Reading Massachusetts: Addison-Wesley.
也可以看看
runmed
用於運行中位數; lowess
和loess
; supsmu
和 smooth.spline
。
相關用法
- R smooth.spline 擬合平滑樣條曲線
- R smoothEnds 端點平滑(用於運行中位數)
- R stlmethods STL 對象的方法
- R summary.nls 總結非線性最小二乘模型擬合
- R summary.manova 多元方差分析的匯總方法
- R summary.lm 總結線性模型擬合
- R screeplot 屏幕圖
- R sortedXyData 創建一個sortedXyData對象
- R sigma 提取殘餘標準差“Sigma”
- R setNames 設置對象中的名稱
- R stat.anova GLM 方差分析統計
- R scatter.smooth 黃土擬合的平滑曲線散點圖
- R splinefun 插值樣條曲線
- R spec.taper 通過餘弦鍾錐化時間序列
- R summary.princomp 主成分分析的匯總方法
- R symnum 符號數字編碼
- R se.contrast 模型術語對比的標準誤差
- R summary.aov 方差模型分析總結
- R stepfun Step Functions - 創建和類
- R shapiro.test 夏皮羅-威爾克正態性檢驗
- R selfStart 構建自啟動非線性模型
- R spec.pgram 通過平滑周期圖估計時間序列的譜密度
- R spec.ar 通過 AR Fit 估計時間序列的頻譜密度
- R supsmu 弗裏德曼的超級平滑
- R stl Loess 時間序列的季節分解
注:本文由純淨天空篩選整理自R-devel大神的英文原創作品 Tukey's (Running Median) Smoothing。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。