adjOutlyingness(robustbase)
adjOutlyingness()所属R语言包:robustbase
Compute Skewness-adjusted Multivariate Outlyingness
计算偏态调整的多因素Outlyingness
译者:生物统计家园网 机器人LoveR
描述----------Description----------
For an n * p data matrix (or data frame) x, compute the “outlyingness” of all n observations. Outlyingness here is a generalization of the Donoho-Stahel outlyingness measure, where skewness is taken into account via the medcouple, mc().
n * p数据矩阵(或数据框)x,计算的“outlyingness”的所有n观察。 Outlyingness这里是一个概括的Donoho提出的Stahel outlyingness措施,其中偏态是考虑通过的medcouple,mc()的。
用法----------Usage----------
adjOutlyingness(x, ndir = 250, clower = 3, cupper = 4,
alpha.cutoff = 0.75, coef = 1.5, qr.tol = 1e-12)
参数----------Arguments----------
参数:x
a numeric matrix or data.frame.
一个数字matrix或data.frame。
参数:ndir
positive integer specifying the number of directions that should be searched.
正整数,指定的数量应搜索的方向。
参数:clower, cupper
the constant to be used for the lower and upper tails, in order to transform the data towards symmetry.
将常数用于下部和上部的尾巴,在以朝向对称变换数据。
参数:alpha.cutoff
number in (0,1) specifying the quantiles (α, 1-α) which determine the “outlier” cutoff.
(0,1)指定的位数(α, 1-α)确定截止的“异常值”。
参数:coef
positive number specifying the factor with which the interquartile range (IQR) is multiplied to determine "boxplot hinges"-like upper and lower bounds.
正数指定的四分位范围(IQR),乘以系数来确定“盒形图hinges般的上限和下限。
参数:qr.tol
positive tolerance to be used for qr and solve.qr for determining the ndir directions, each determined by a random sample of p (out of n) observations.
正公差,用于qr和solve.qr确定ndir方向时,由随机抽样的p(满分n)观察。
Details
详细信息----------Details----------
FIXME: Details in the comment of the Matlab code; also in the reference(s).
FIXME:详细的Matlab代码的注释中,也引用(S)。
The method as described can be useful as preprocessing in FASTICA (http://www.cis.hut.fi/projects/ica/fastica/; see also the R package fastICA.
所述的方法可能是有用的作为预处理中的FastICA(http://www.cis.hut.fi/projects/ica/fastica/看到的R套件“fastICA。
值----------Value----------
a list with components
与组件的列表
参数:adjout
numeric of length(n) giving the adjusted outlyingness of each observation.
数字,length(n)的给调整outlyingness每个观察。
参数:cutoff
cutoff for “outlier” with respect to the adjusted outlyingnesses, and depending on alpha.cutoff.
截止“异常值”与调整后的outlyingnesses的,根据alpha.cutoff。
参数:nonOut
logical of length(n), TRUE when the corresponding observation is non-outlying with respect to the cutoff and the adjusted outlyingnesses.
逻辑length(n),TRUE时,对应的观察是相对于截止和调整outlyingnesses非外围。
注意----------Note----------
The result is random as it depends on the sample of ndir directions chosen.
结果是随机的,因为它依赖于ndir方向选择的样本。
(作者)----------Author(s)----------
Guy Brys; help page and improvements by Martin Maechler
参考文献----------References----------
A Robustification of Independent Component Analysis; Journal of Chemometrics, 19, 1–12.
http://wis.kuleuven.be/stat/robust.html
参见----------See Also----------
the adjusted boxplot, adjbox and the medcouple, mc.
调整后的盒形图,adjbox和medcouple,mc。
实例----------Examples----------
## An Example with bad condition number and "border case" outliers[#为例恶劣条件下的数量和“边界情况下,”离群值]
if(FALSE) {## Not yet ok, because of bug in adjOutl[#尚未确定,因为错误adjOutl]
dim(longley)
set.seed(1) ## result is random %% and there's a bug - FIXME! -- try set.seed(3)[#结果是随机的%%,并有一个错误 - FIXME! - 尝试set.seed(3)]
ao1 <- adjOutlyingness(longley)
## which are not outlying ?[#这是边远?]
table(ao1$nonOut) ## all of them[#所有的人都]
stopifnot(all(ao1$nonOut))
}
## An Example with outliers :[#异常值的范例:]
dim(hbk)
set.seed(1)
ao.hbk <- adjOutlyingness(hbk)
str(ao.hbk)
hist(ao.hbk $adjout)## really two groups[#真正的两组]
table(ao.hbk$nonOut)## 14 outliers, 61 non-outliers:[第14离群点,61个非离群:]
## outliers are :[#异常值是:]
which(! ao.hbk$nonOut) # 1 .. 14 --- but not for all random seeds![1。 14 ---但不是所有的随机种子!]
## here, they are the same as found by (much faster) MCD:[#在这里,它们是相同的(更快)MCD发现:]
cc <- covMcd(hbk)
stopifnot(all(cc$mcd.wt == ao.hbk$nonOut))
## This is revealing (about 1--2 cases, where outliers are *not* == 1:14[#这是揭示(约1 - 2例,异常值是*不* == 1:14]
## but needs almost 1 [sec] per call:[#,但需要近1秒]每次通话:]
if(interactive()) {
for(i in 1:30) {
print(system.time(ao.hbk <- adjOutlyingness(hbk)))
if(!identical(iout <- which(!ao.hbk$nonOut), 1:14)) {
cat("Outliers:\n"); print(iout)
}
}
}
转载请注明:出自 生物统计家园网(http://www.biostatistic.net)。
注:
注1:为了方便大家学习,本文档为生物统计家园网机器人LoveR翻译而成,仅供个人R语言学习参考使用,生物统计家园保留版权。
注2:由于是机器人自动翻译,难免有不准确之处,使用时仔细对照中、英文内容进行反复理解,可以帮助R语言的学习。
注3:如遇到不准确之处,请在本贴的后面进行回帖,我们会逐渐进行修订。
|