有序数据的离群分析

时间:2014-03-20 17:10:03

标签: r analysis ordinal

简而言之,我进行了一项满意度调查,调查对象需要以1到7的满意度答复。

以下是数据集中两个变量之间的散点图(抖动)的示例(我正在研究R):

enter image description here

https://drive.google.com/uc?export=download&id=0Bx2Sns2vaI9ycm1tV2pNSWUxQXc

因此,我正在研究的数据集是由我想要进行离群值分析的序数据组成的。

您认为这类数据的最佳异常分析方法是什么?如何在R上实施?

提前非常感谢,

1 个答案:

答案 0 :(得分:1)

您的数据如下所示:

x = rep(1:7, c(3, 4,17, 21, 48, 118, 93)) 
y = c(
    rep(1:7,c(1,2,0,0,0,0,0)),
    rep(1:7,c(2,0,1,1,0,0,0)),
    rep(1:7,c(10,3,2,1,0,0,1)),
    rep(1:7,c(15,3,1,1,1,0,0)),
    rep(1:7,c(20,10,2,10,3,2,1)),
    rep(1:7,c(40,20,20,30,3,4,1)),
    rep(1:7,c(50,25,10,5,3,0,0))
)

情节:

library(car)
sp(x,y, jitter = list(x=0.8, y=0.8), smoother=F, reg.line = F)

enter image description here

如果您只想知道给定值是否是数据中的异常值 (即单变量离群值分析),您可以使用:

library(outliers)
grubbs.test(x)

或简单地使用boxplot将哪些值绘制为异常值:

boxplot(x, plot=F)$out

如果您需要多变量异常值,则可以使用mvoutlier包 (参见函数?chisq.plot?pcout):

library(mvoutlier)
pcout(x=data.frame(x,y))