tiebreak {robusTest}R Documentation

Break the ties in a given vector or between two vectors

Description

If the vector contains ties (either inside a single or between two vectors), the function breaks them using a random perturbation.

Usage

tiebreak(x, y = NULL, nb_break = FALSE)

Arguments

x, y

the variables containing ties.

nb_break

if TRUE return also the number of values that have been broken

Details

If y=NULL the function detects the ties in the vector x. A uniform variable on the interval [-e^(-5),e^(-5)] is added to the value of all the ties but one in the vector x. If y is also provided, the function detects the ties between x and y and break them (only in the x vector) by adding a uniform variable on the interval [-e^(-5),e^(-5)] to these values. If nb_break=TRUE the result is returned as a list that also includes the number of values that have been broken.

Value

After breaking the ties, either returns the x variable as a vector or returns a list containing the x and y variables. If nb_break=TRUE, the number of values that have been broken is also an element of the list.

Examples

x <- c(1,2,2,3,4,5,5,5,7)
xbreak=tiebreak(x)
xbreak
#a uniform value has been added to the second, sixth and seventh value of x.
tiebreak(x,nb_break=TRUE) #3 values have been broken in x
sum(duplicated(xbreak))#check if the breaking procedure has worked.
y <- c(4,9,12,11,2,10)
xy_break=tiebreak(x,y)
xy_break$x
xy_break$y #a uniform value has been added to the second, third and fifth value of x.
xy_break$x%in%xy_break$y #check that no values for xbreak can be found in ybreak
tiebreak(x,y,nb_break=TRUE) #also returns the number of broken values

[Package robusTest version 1.1.0 Index]