当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


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。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。