Hi, Is there a function like rank but that solves the ties by randomly assigning a value (doesn't average ranks of ties). This is what I actually need: I want to make NA all elements of each column in an array that are ranked in a position larger that rankmax for each column. # Say I've got an array b: b<-cbind(c(1:5,5:1),c(1,12,14,2,5,4:8)) #> b # [,1] [,2] #[1,] 1 1 #[2,] 2 12 #[3,] 3 14 #[4,] 4 2 #[5,] 5 5 #[6,] 5 4 #[7,] 4 5 #[8,] 3 6 #[9,] 2 7 #[10,] 1 8
rankmax<-5 # The maximum rank position # I make the values ranked in a position larger than 5 NAs b[which(apply(b,2,rank)>rankmax)]<-NA # > b # [,1] [,2] # [1,] 1 1 # [2,] 2 NA # [3,] NA NA # [4,] NA 2 # [5,] NA 5 # [6,] NA 4 # [7,] NA 5 # [8,] NA NA # [9,] 2 NA #[10,] 1 NA ### What I want is one of the "3" in the first column not to be made NA. (similar to the algorithm used in sort) Thanks in advance for any help, Angel ______________________________________________ [EMAIL PROTECTED] mailing list https://www.stat.math.ethz.ch/mailman/listinfo/r-help
