其他分享
首页 > 其他分享> > R语言 --> 找出向量或矩阵中最大的三个异常值的位置

R语言 --> 找出向量或矩阵中最大的三个异常值的位置

作者:互联网

【任务简介】

下面以找出矩阵中最大的三个异常值的位置为例。

此处的异常值定义为矩阵中各数与中位数的差的绝对值。

【程序代码】

rs<-matrix(c(1,2,3,12,16,99999,7,8,9),ncol=3,nrow=3,byrow=TRUE)

findpos <- function(x) {
  mdn <- median(x)
  devs <- abs(x-mdn)
  arrayInd(sort.list(devs,decreasing=T)[1:3],dim(devs))
}

【运行结果】

> findpos(rs)   # rs<-matrix(c(1,2,3,12,16,99999,7,8,9),ncol=3,nrow=3,byrow=TRUE)
     [,1] [,2]
[1,]    2    3
[2,]    2    2
[3,]    1    1

【参考文献】

https://blog.csdn.net/hongweigg/article/details/48016307

 

标签:找出,rs,--,程序代码,矩阵,各数,异常,向量
来源: https://blog.csdn.net/hnjzsyjyj/article/details/111319915