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


R rlm 線性模型的穩健擬合


R語言 rlm 位於 MASS 包(package)。

說明

使用 M 估計器通過穩健回歸擬合線性模型。

用法

rlm(x, ...)

## S3 method for class 'formula'
rlm(formula, data, weights, ..., subset, na.action,
    method = c("M", "MM", "model.frame"),
    wt.method = c("inv.var", "case"),
    model = TRUE, x.ret = TRUE, y.ret = FALSE, contrasts = NULL)

## Default S3 method:
rlm(x, y, weights, ..., w = rep(1, nrow(x)),
    init = "ls", psi = psi.huber,
    scale.est = c("MAD", "Huber", "proposal 2"), k2 = 1.345,
    method = c("M", "MM"), wt.method = c("inv.var", "case"),
    maxit = 20, acc = 1e-4, test.vec = "resid", lqs.control = NULL)

psi.huber(u, k = 1.345, deriv = 0)
psi.hampel(u, a = 2, b = 4, c = 8, deriv = 0)
psi.bisquare(u, c = 4.685, deriv = 0)

參數

formula

y ~ x1 + x2 + ... 形式的公式。

data

優先采用formula中指定的變量的可選 DataFrame 、列表或環境。

weights

每種情況的先驗權重向量。

subset

指定擬合中使用的情況的索引向量。

na.action

指定在以下情況下要采取的操作的函數NA找到了。 ‘factory-fresh’默認操作Rna.omit,並且可以通過以下方式更改options(na.action=).

x

包含解釋變量的矩陣或 DataFrame 。

y

響應:長度為 x 的行數的向量。

method

當前M-estimation 或MM-estimation 或(僅適用於formula 方法)查找模型框架。 MM-estimation 是 M-estimation,其中 Tukey 的雙權值由特定的 S-estimator 初始化。請參閱“詳細信息”部分。

wt.method

權重是案例權重(給出案例的相對重要性,因此權重為 2 意味著有兩個)或方差的倒數,因此權重為 2 意味著該誤差是變量的一半?

model

模型框架應該在對象中返回嗎?

x.ret

模型矩陣應該在對象中返回嗎?

y.ret

響應應該在對象中返回嗎?

contrasts

可選對比度規格:請參閱lm

w

(可選)每種情況的初始down-weighting。

init

(可選)係數的初始值或查找初始值的方法或與 coef 組件擬合的結果。已知的方法是 "ls" (默認)用於使用權重 w*weights 進行初始最小二乘擬合,以及 "lts" 用於使用 200 個樣本進行未加權 least-trimmed 平方擬合。

psi

psi 函數由此參數指定。它必須給出(可能通過名稱)一個函數g(x, ..., deriv),對於deriv=0返回psi(x)/x,對於deriv=1返回psi'(x)。調整常量將通過 ... 傳入。

scale.est

尺度估計方法:殘差的重新縮放 MAD(默認)或 Huber 的建議 2(可以通過 "Huber""proposal 2" 選擇)。

k2

用於 Huber 建議 2 規模估計的調整常數。

maxit

IWLS 迭代次數的限製。

acc

停止標準的準確性。

test.vec

停止標準基於該向量的變化。

...

要傳遞給 rlm.defaultpsi 函數的其他參數。

lqs.control

lqs 的可選控製值列表。

u

評估點的數值向量。

k , a , b , c

調整常數。

deriv

01 :計算 psi 函數或其一階導數的值。

細節

擬合是通過迭代重新加權最小二乘法 (IWLS) 完成的。

Psi 函數為 Huber、Hampel 和 Tukey bisquare 提案提供為 psi.huberpsi.hampelpsi.bisquare 。 Huber 對應於凸優化問題並給出唯一的解(直到共線性)。另外兩個將有多個局部最小值,並且需要一個好的起點。

選擇 method = "MM" 會選擇一組特定的選項,以確保估算器具有較高的擊穿點。初始係數集和最終比例由 S-estimator 和 k0 = 1.548 選擇;這給出了(對於 )故障點 0.5。最終的估計器是具有 Tukey 雙權重和固定比例的 M-estimator,它將繼承 c > k0 提供的這個故障點;這對於 c 的默認值來說是正確的,它對應於正常情況下的 95% 相對效率。 method = "MM" 不支持大小寫權重。

繼承自 "lm" 的類 "rlm" 的對象。請注意,df.residual 分量特意設置為 NA,以避免 "lm" 方法根據殘差均方錯誤估計殘差比例。

不在 lm 對象中的附加組件是

s

使用的穩健尺度估計

w

IWLS 過程中使用的權重

psi

帶有參數替換的 psi 函數

conv

每次迭代的收斂標準

converged

IWLS 收斂了嗎?

wresid

工作殘差,僅針對 "inv.var" 權重進行加權。

注意

在版本 7.3-52 之前,formula 中的偏移項從擬合值和預測值中省略。

例子

summary(rlm(stack.loss ~ ., stackloss))
rlm(stack.loss ~ ., stackloss, psi = psi.hampel, init = "lts")
rlm(stack.loss ~ ., stackloss, psi = psi.bisquare)

參考

P. J. Huber (1981) Robust Statistics. Wiley.

F. R. Hampel, E. M. Ronchetti, P. J. Rousseeuw and W. A. Stahel (1986) Robust Statistics: The Approach based on Influence Functions. Wiley.

A. Marazzi (1993) Algorithms, Routines and S Functions for Robust Statistics. Wadsworth & Brooks/Cole.

Venables, W. N. and Ripley, B. D. (2002) Modern Applied Statistics with S. Fourth edition. Springer.

也可以看看

lmlqs

相關用法


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