Returns an index of positions. Intended for evaluating a step function at selected times. The function counts how many elements of a vector, e.g. the jump times of the step function, are smaller or equal to the elements in a second vector, e.g. the times where the step function should be evaluated.
Arguments
- jump.times
Numeric vector: e.g. the unique jump times of a step function.
- eval.times
Numeric vector: e.g. the times where the step function should be evaluated
- comp
If "greater" count the number of jump times that are greater (greater or equal when strict==FALSE) than the eval times
- strict
If TRUE make the comparison of jump times and eval times strict
Value
Index of the same length as eval.times containing the numbers
of the jump.times that are smaller than or equal to
eval.times.
Details
If all jump.times are greater than a particular eval.time the
sindex returns 0. This must be considered when sindex is used for
subsetting, see the Examples below.
Author
Thomas A. Gerds tag@biostat.ku.dk
Examples
test <- list(time = c(1, 1,5,5,2,7,9),
status = c(1,0,1,0,1,1,0))
fit <- prodlim(Hist(time,status)~1,data=test)
jtimes <- fit$time
etimes <- c(0,.5,2,8,10)
fit$surv
#> [1] 0.8571429 0.6857143 0.5142857 0.2571429 0.2571429
c(1,fit$surv)[1+sindex(jtimes,etimes)]
#> [1] 1.0000000 1.0000000 0.6857143 0.2571429 0.2571429