mu.rank {muStat} | R Documentation |
Returns a vector of the (mid-) ranks of the input.
mu.rank(x, na.last = TRUE, na.rm=Inf) mu.rank.nna(x)
x |
numeric vector. Missing values (NA ) are allowed for
mu.rank but not for mu.rank.nna |
na.last |
vector with one element.
If TRUE , NA s are put last,
if FALSE , NA s are put first,
if NA , NA s are handled according to na.rm ;
"keep" is equivalent to NA and na.rm = F. |
na.rm |
logical flag, indicating if missing values (NA )
should be removed (TRUE ) or not (FALSE ) in the output.
If NA , NA s in x are not allowed and
na.last is ignored. The default for na.rm
is TRUE if na.last = NA and FALSE else. |
mu.rank
is faster than rank
. The treatment of missing
values is controlled by both na.last
and na.rm
.
the ranks; i.e., the i
-th value is the rank of x[i]
.
In case of ties, average ranks is returned.
Knut M. Wittkowski kmw@rockefeller.edu, Tingting Song ttsong@gmail.com
a <- c(4, 2, 5, 1, 4, NA, 6) mu.rank(a) # default: na.last=TRUE, na.rm=FALSE # [1] 3.5 2.0 5.0 1.0 3.5 7.0 6.0 mu.rank(a,na.last=NA) # default: na.rm=TRUE # [1] 3.5 2.0 5.0 1.0 3.5 6.0 mu.rank(a,na.last=NA,na.rm=FALSE) # 3.5 2.0 5.0 1.0 3.5 NA 6.0 # Spearman's rank correlation between two sets of testscores a <- c(4, 2, 5, 1, 4, NA, 6) b <- c(4, 2, 5, NA, 4, 5, 6) cor(a, b, if(is.R()) "complete.obs" else "available") # [1] 0.8241688 cor(a, b, if(is.R()) "pairwise.complete.obs" else "omit") # [1] 1 cor(rank(a), rank(b)) # [1] 0.1651446 cor(mu.rank(a, na.last=NA, na.rm=FALSE), mu.rank(b, na.last=NA, na.rm=FALSE), if(is.R()) "complete.obs" else "available") # [1] 0.8523852 cor(mu.rank(a, na.last=NA, na.rm=FALSE), mu.rank(b, na.last=NA, na.rm=FALSE), if(is.R()) "pairwise.complete.obs" else "omit") # [1] 0.9953452 cor(rank(a[!is.na(a*b)]), rank(b[!is.na(a*b)])) # [1] 1