Rの基本パッケージ中の平滑化関数一覧
の編集
http://www.okadajp.org/RWiki/?R%E3%81%AE%E5%9F%BA%E6%9C%AC%E3%83%91%E3%83%83%E3%82%B1%E3%83%BC%E3%82%B8%E4%B8%AD%E3%81%AE%E5%B9%B3%E6%BB%91%E5%8C%96%E9%96%A2%E6%95%B0%E4%B8%80%E8%A6%A7
[
トップ
] [
編集
|
差分
|
バックアップ
|
添付
|
リロード
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
]
-- 雛形とするページ --
(no template pages)
//間瀬(2004/09/07) COLOR(red){SIZE(18){R の平滑化関数の簡易紹介}} R は幾つかのデータの平滑化関数を持つ。一部は時系列オブジェクトの 平滑化を行う。ここでは R の基本パッケージ stats 中の、特に散布図の平滑化を行う関数を紹介する。 #contents ~ *核関数による平滑化 **核関数を用いた平滑化 Nadaraya-Watson による核関数を用いた回帰平滑化を行う。 ksmooth(x, y, kernel = c("box", "normal"), bandwidth = 0.5, range.x = range(x), n.points = max(100, length(x)), x.points) *多項式の局所的当てはめによる平滑化 **散布図平滑化 LOWESS 平滑化による計算を実行する。 lowess89 は平滑結果の座標である x と y を成分に持つリストを 返す。平滑結果は lines() 関数で元の散布図プロットに描き加えることができる。 lowess(x, y = NULL, f = 2/3, iter=3, delta = 0.01 * diff(range(xy$x[o]))) **散布図と Loess 平滑化曲線の同時プロット 散布図を描き、それに Loess による平滑化曲線を上描きする。 scatter.smooth(x, y, span = 2/3, degree = 1, family = c("symmetric", "gaussian"), xlab = deparse(substitute(x)), ylab = deparse(substitute(y)), ylim = range(y, prediction$y), evaluation = 50, ...) loess.smooth(x, y, span = 2/3, degree = 1, family = c("symmetric", "gaussian"), evaluation = 50, ...) *スプライン関数当てはめによる平滑化 **スプライン関数当てはめによる予測 スプライン関数当てはめによる新しい点での予測を行う。 予測は元のデータ範囲外では直線になる。 ## クラス "smooth.spline" に対する S3 メソッド predict(object, x, deriv = 0, ...) **スプライン関数による平滑化 与えられたデータに3次の平滑化スプライン関数を当てはめる。 smooth.spline(x, y = NULL, w = NULL, df, spar = NULL, cv = FALSE, all.knots = FALSE, nknots = NULL, df.offset = 0, penalty = 1, control.spar = list()) **散布図と Loess 平滑化曲線の同時プロット 散布図を描き、それに Loess による平滑化曲線を上描きする。 scatter.smooth(x, y, span = 2/3, degree = 1, family = c("symmetric", "gaussian"), xlab = deparse(substitute(x)), ylab = deparse(substitute(y)), ylim = range(y, prediction$y), evaluation = 50, ...) loess.smooth(x, y, span = 2/3, degree = 1, family = c("symmetric", "gaussian"), evaluation = 50, ...) *移動直線平滑化、Friedman の supersmoother 法 **Friedman の SuperSmoother Friedman の「super smoother」を用いて (x,y) 値を 平滑化する。 supsmu(x, y, wt, span = "cv", periodic = FALSE, bass = 0) *移動中央値による平滑化 **移動中央値平滑化 奇数スパンの移動中央値(running median)を計算する。 これは考えられる限り「最も頑健」な散布図平滑化である。効率化(そして歴史的理由から)、 同じ結果を与える二つの方法を選ぶことができる。 runmed(x, k, endrule = c("median","keep","constant"), algorithm = NULL, print.level = 0) **Tukey の移動中央値平滑化 Tukey の移動中央値平滑化(runnning median)を行う。 smooth(x, kind = c("3RS3R", "3RSS", "3RSR", "3R", "3", "S"), twiceit = FALSE, endrule = "Tukey", do.ends = FALSE) **移動中央値に対する端点平滑化 最端点で順次小さくなる中央値と Tukey の端点規則を使用し、 ベクトル y の端点を平滑化する。 smoothEnds(y, k = 3)
タイムスタンプを変更しない
//間瀬(2004/09/07) COLOR(red){SIZE(18){R の平滑化関数の簡易紹介}} R は幾つかのデータの平滑化関数を持つ。一部は時系列オブジェクトの 平滑化を行う。ここでは R の基本パッケージ stats 中の、特に散布図の平滑化を行う関数を紹介する。 #contents ~ *核関数による平滑化 **核関数を用いた平滑化 Nadaraya-Watson による核関数を用いた回帰平滑化を行う。 ksmooth(x, y, kernel = c("box", "normal"), bandwidth = 0.5, range.x = range(x), n.points = max(100, length(x)), x.points) *多項式の局所的当てはめによる平滑化 **散布図平滑化 LOWESS 平滑化による計算を実行する。 lowess89 は平滑結果の座標である x と y を成分に持つリストを 返す。平滑結果は lines() 関数で元の散布図プロットに描き加えることができる。 lowess(x, y = NULL, f = 2/3, iter=3, delta = 0.01 * diff(range(xy$x[o]))) **散布図と Loess 平滑化曲線の同時プロット 散布図を描き、それに Loess による平滑化曲線を上描きする。 scatter.smooth(x, y, span = 2/3, degree = 1, family = c("symmetric", "gaussian"), xlab = deparse(substitute(x)), ylab = deparse(substitute(y)), ylim = range(y, prediction$y), evaluation = 50, ...) loess.smooth(x, y, span = 2/3, degree = 1, family = c("symmetric", "gaussian"), evaluation = 50, ...) *スプライン関数当てはめによる平滑化 **スプライン関数当てはめによる予測 スプライン関数当てはめによる新しい点での予測を行う。 予測は元のデータ範囲外では直線になる。 ## クラス "smooth.spline" に対する S3 メソッド predict(object, x, deriv = 0, ...) **スプライン関数による平滑化 与えられたデータに3次の平滑化スプライン関数を当てはめる。 smooth.spline(x, y = NULL, w = NULL, df, spar = NULL, cv = FALSE, all.knots = FALSE, nknots = NULL, df.offset = 0, penalty = 1, control.spar = list()) **散布図と Loess 平滑化曲線の同時プロット 散布図を描き、それに Loess による平滑化曲線を上描きする。 scatter.smooth(x, y, span = 2/3, degree = 1, family = c("symmetric", "gaussian"), xlab = deparse(substitute(x)), ylab = deparse(substitute(y)), ylim = range(y, prediction$y), evaluation = 50, ...) loess.smooth(x, y, span = 2/3, degree = 1, family = c("symmetric", "gaussian"), evaluation = 50, ...) *移動直線平滑化、Friedman の supersmoother 法 **Friedman の SuperSmoother Friedman の「super smoother」を用いて (x,y) 値を 平滑化する。 supsmu(x, y, wt, span = "cv", periodic = FALSE, bass = 0) *移動中央値による平滑化 **移動中央値平滑化 奇数スパンの移動中央値(running median)を計算する。 これは考えられる限り「最も頑健」な散布図平滑化である。効率化(そして歴史的理由から)、 同じ結果を与える二つの方法を選ぶことができる。 runmed(x, k, endrule = c("median","keep","constant"), algorithm = NULL, print.level = 0) **Tukey の移動中央値平滑化 Tukey の移動中央値平滑化(runnning median)を行う。 smooth(x, kind = c("3RS3R", "3RSS", "3RSR", "3R", "3", "S"), twiceit = FALSE, endrule = "Tukey", do.ends = FALSE) **移動中央値に対する端点平滑化 最端点で順次小さくなる中央値と Tukey の端点規則を使用し、 ベクトル y の端点を平滑化する。 smoothEnds(y, k = 3)
テキスト整形のルールを表示する