lqs
位于 MASS
包(package)。 说明
对数据集中的优点进行回归拟合,从而获得具有高故障点的回归估计器。 lmsreg
和 ltsreg
是兼容性包装器。
用法
lqs(x, ...)
## S3 method for class 'formula'
lqs(formula, data, ...,
method = c("lts", "lqs", "lms", "S", "model.frame"),
subset, na.action, model = TRUE,
x.ret = FALSE, y.ret = FALSE, contrasts = NULL)
## Default S3 method:
lqs(x, y, intercept = TRUE, method = c("lts", "lqs", "lms", "S"),
quantile, control = lqs.control(...), k0 = 1.548, seed, ...)
lmsreg(...)
ltsreg(...)
参数
formula |
|
data |
可选 DataFrame 、列表或环境,优先从中获取 |
subset |
指定拟合中使用的情况的索引向量。 (注意:如果给出,该参数必须准确命名。) |
na.action |
函数指定找到 |
model , x.ret , y.ret |
合乎逻辑的。如果 |
contrasts |
可选列表。请参阅 |
x |
包含解释变量的矩阵或 DataFrame 。 |
y |
响应:长度为 |
intercept |
模型应该包含截距吗? |
method |
要使用的方法。 |
quantile |
要使用的分位数:请参阅 |
control |
其他控制项:请参阅 |
k0 |
|
seed |
用于随机采样的种子:请参阅 |
... |
要传递给 |
细节
假设有 n
数据点和 p
回归量,包括任何截距。
前三种方法最小化排序残差平方的某些函数。对于方法"lqs"
和"lms"
是quantile
残差平方,对于"lts"
是quantile
最小残差平方之和。 "lqs"
和 "lms"
的不同之处在于 quantile
的默认值分别为 floor((n+p+1)/2)
和 floor((n+1)/2)
。对于 "lts"
,默认值为 floor(n/2) + floor((p+1)/2)
。
"S"
估计方法求解尺度s
,使得残差的函数chi除以s
的平均值等于给定常数。
control
参数是一个包含组件的列表
psamp
:-
每个样本的大小。默认为
p
。 nsamp
:-
样本数或
"best"
(默认值)或"exact"
或"sample"
。如果"sample"
,则选择的数字是min(5*p, 3000)
,取自Rousseeuw 和Hubert (1997)。如果"best"
穷举枚举最多 5000 个样本; if"exact"
将尝试进行详尽的枚举,但需要许多样本。 adjust
:-
是否应该针对每个样本优化截距?默认为
TRUE
。
值
类 "lqs"
的对象。这是一个包含组件的列表
crit |
在 IWLS 细化之前的 |
sing |
特点。有关导致奇异拟合的样本数量的消息。 |
coefficients |
拟合的线性模型 |
bestone |
由找到的最佳样本拟合的那些点的索引(在调整截距之前,如果需要的话)。 |
fitted.values |
拟合值。 |
residuals |
残差。 |
scale |
误差范围的估计。第一个是基于拟合标准。第二个( |
注意
除了历史原因之外,似乎没有其他理由使用 lms
和 lqs
选项。 LMS 估计效率较低(以 速率收敛),而 LTS 具有与在四分位数处修剪的 M 估计器相同的渐近效率(Marazzi,1993,p.201)。如果 floor((n+p)/2) <= quantile <= floor((n+p+1)/2)
则 LQS 和 LTS 具有相同的 (floor((n-p)/2) + 1)/n
最大击穿值。 LTS 提到的唯一缺点是计算量更大,因为人们认为需要排序(Marazzi,1993,p.201),但事实并非如此,因为可以使用部分排序(并且在此实现中使用)。
调整每个试验拟合的截距确实需要对残差进行排序,并且如果 n
大而 p
小,则可能需要大量的额外计算。
对于 psamp
的选择存在不同意见。 Rousseuw and Hubert (1997) 只考虑 p; Marazzi (1993) 建议采用 p+1,并建议更多样本优于针对给定计算限制进行调整。
对于仅具有截距和调整的模型,计算是精确的;而对于具有截距加一个回归器和带有调整的穷举搜索的模型的 LQS,计算是精确的。对于所有其他情况,最小化仅是近似的。
例子
## IGNORE_RDIFF_BEGIN
set.seed(123) # make reproducible
lqs(stack.loss ~ ., data = stackloss)
lqs(stack.loss ~ ., data = stackloss, method = "S", nsamp = "exact")
## IGNORE_RDIFF_END
参考
P. J. Rousseeuw and A. M. Leroy (1987) Robust Regression and Outlier Detection. Wiley.
A. Marazzi (1993) Algorithms, Routines and S Functions for Robust Statistics. Wadsworth and Brooks/Cole.
P. Rousseeuw and M. Hubert (1997) Recent developments in PROGRESS. In L1-Statistical Procedures and Related Topics, ed Y. Dodge, IMS Lecture Notes volume 31, pp. 201-214.
也可以看看
相关用法
- R loglm1 通过迭代比例缩放拟合对数线性模型 - 内部函数
- R lm.ridge 岭回归
- R lm.gls 通过广义最小二乘法拟合线性模型
- R ldahist 多组的直方图或密度图
- R leuk 白血病患者的生存时间和白细胞计数
- R logtrans 估计对数变换参数
- R loglm 通过迭代比例缩放拟合对数线性模型
- R lda 线性判别分析
- R summary.rlm 鲁棒线性模型的总结方法
- R ginv 广义逆矩阵
- R housing 哥本哈根住房条件调查的频率表
- R biopsy 乳腺癌患者的活检数据
- R predict.qda 根据二次判别分析进行分类
- R contr.sdif 连续差异对比编码
- R Melanoma 恶性黑色素瘤的生存率
- R boxcox 线性模型的 Box-Cox 变换
- R predict.glmmPQL glmmPQL 拟合的预测方法
- R ucv 带宽选择的无偏交叉验证
- R theta.md 估计负二项式的 theta
- R parcoord 平行坐标图
- R rlm 线性模型的稳健拟合
- R npk 经典 N、P、K 阶乘实验
- R Cars93 1993 年美国销售的 93 辆汽车的数据
- R predict.lda 通过线性判别对多变量观测值进行分类
- R geyser 老忠实间歇泉数据
注:本文由纯净天空筛选整理自R-devel大神的英文原创作品 Resistant Regression。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。