This function can be used to detect exceptionally high or low scores in a vector.
exceptionalScore( x, prob = 0.025, both = TRUE, silent = FALSE, quantileCorrection = 1e-04, quantileType = 8 )
x | Vector in which to detect exceptional scores. |
---|---|
prob | Probability that a score is exceptionally positive or negative;
i.e. scores with a quartile lower than |
both | Whether to consider values exceptional if they're below
|
silent | Can be used to suppress messages. |
quantileCorrection | By how much to correct the computed quantiles; this is used because when a distribution is very right-skewed, the lowest quantile is the lowest value, which is then also the mode; without subtracting a correction, almost all values would be marked as 'exceptional'. |
quantileType | The algorithm used to compute the quantiles; see
|
A logical vector, indicating for each value in the supplied vector whether it is exceptional.
Note that of course, by definition, prob
or 2 * prob
percent of
the values is exceptional, so it is usually not a wise idea to remove scores
based on their 'exceptionalness'. Instead, use exceptionalScores()
,
which calls this function, to see how often participants answered
exceptionally, and remove them based on that.
exceptionalScore( c(1,1,2,2,2,3,3,3,4,4,4,5,5,5,5,6,6,7,8,20), prob=.05 ); #> [1] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE #> [13] FALSE FALSE FALSE FALSE FALSE FALSE FALSE TRUE