| Misc {Hmisc} | R Documentation |
This documents miscellaneous small functions in Hmisc that may be of interest to users.
confbar draws multi-level confidence bars using small rectangles
that may be of different colors.
james.stein computes James-Stein shrunken estimates of cell
means given a response variable (which may be binary) and a grouping
indicator.
km.quick provides a fast way to invoke survfit.km in the
survival package to get Kaplan-Meier estimates for a
single stratum for a vector of time points (if times is given) or to
get a vector of survival time quantiles (if q is given).
lm.fit.qr.bare is a fast stripped-down function for computing
regression coefficients, residuals, R^2, and fitted values. It
uses the Fortran routines dqrls.
matxv multiplies a matrix by a vector, handling automatic
addition of intercepts if the matrix does not have a column of ones.
If the first argument is not a matrix, it will be converted to one.
nomiss returns a data frame (if its argument is one) with rows
corresponding to NAs removed, or it returns a matrix with rows
with any element missing removed.
outerText uses text() to put test strings in left or
right margins. It temporarily sets par(xpd=NA) if using R.
sepUnitsTrans converts character vectors containing values such
as c("3 days","3day","4month","2 years","2weeks","7") to
numeric vectors
(here c(3,3,122,730,14,7)) in a flexible fashion. The user can
specify a
vector of units of measurements and conversion factors. The units
with a conversion factor of 1 are taken as the target units,
and if those units are present in the character strings they are
ignored. The target units are added to the resulting vector as the
"units" attribute.
trap.rule computes the area under a curve using the trapezoidal
rule, assuming x is sorted.
trellis.strip.blank sets up Trellis or Lattice graphs to have a
clear background on the strips for panel labels.
under.unix is a scalar logical value that is TRUE if you
are running Linux or Unix.
.R. is a logical value set to TRUE if running R,
FALSE for S-Plus.
.SV4. is a logical value set to TRUE if running version
4 of the S language under S-Plus, FALSE otherwise.
unPaste provides a version of the S-Plus unpaste that
works for R and S-Plus.
whichClosePW is a very fast function using weighted multinomial
sampling to determine which element of a vector is "closest" to each
element of another vector. whichClosest quickly finds the closest
element without any randomness.
xless is a function for Linux/Unix users to invoke the system
xless command to pop up a window to display the result of
printing an object.
confbar(at, est, se, width, q = c(0.7, 0.8, 0.9, 0.95, 0.99),
col = if (.R.) gray(c(0, 0.25, 0.5, 0.75, 1)) else
if (under.unix) c(1, 0.8, 0.5, 0.2, 0.065) else
c(1, 4, 3, 2, 5),
type = c("v", "h"), labels = TRUE, ticks = FALSE,
cex = 0.5, side = "l", lwd = 5, clip = c(-1e+30, 1e+30),
fun = function(x) x,
qfun = function(x) ifelse(x == 0.5, qnorm(x),
ifelse(x < 0.5, qnorm(x/2),
qnorm((1 + x)/2))))
james.stein(y, group)
km.quick(S, times, q)
lm.fit.qr.bare(x, y, tolerance, intercept=TRUE, xpxi=FALSE)
matxv(a, b, kint=1)
nomiss(x)
outerText(string, y, setAside=string[1], side=4, space=1,
adj=1, cex=par('cex'))
sepUnitsTrans(x, conversion=c(day=1, month=365.25/12, year=365.25, week=7),
round=FALSE, digits=0)
trap.rule(x, y)
trellis.strip.blank()
unPaste(str, sep="/", extended=FALSE)
whichClosest(x, w)
whichClosePW(x, w, f=0.2)
xless(x, ..., title)
at |
x-coordinate for vertical confidence intervals, y-coordinate for horizontal |
est |
vector of point estimates for confidence limits |
se |
vector of standard errors |
width |
width of confidence rectanges in user units |
q |
vector of confidence coefficients or quantiles |
col |
vector of colors |
type |
"v" for vertical, "h" for horizontal |
labels |
set to FALSE to omit drawing confidence
coefficients |
ticks |
set to TRUE to draw lines between rectangles |
cex |
character expansion factor |
side |
for confbar is "b","l","t","r" for bottom,
left, top, right. For outText is the using integers 1-4
corresponding to these. |
lwd |
line widths |
clip |
interval to truncate limits |
fun |
function to transform scale |
qfun |
quantiles on transformed scale |
group |
a categorical grouping variable |
S |
a Surv object |
times |
a numeric vector of times |
tolerance |
tolerance for judging singularity in matrix |
intercept |
set to FALSE to not automatically add a column
of ones to the x matrix |
xpxi |
set to TRUE to add an element to the result
containing the inverse of X'X |
a |
a numeric matrix or vector |
b |
a numeric vector |
kint |
which element of b to add to the result if a
does not contain a column for intercepts |
string |
a character string vector |
setAside |
for adj=1 side=4, is a character string used to
determine the space to set aside for all strings. |
space |
the number of extra characters to leave to the left of
the string(s) (adj=0) or to the right (adj=1) |
adj |
0 for left justification, 0.5 for centered, 1 for right |
conversion |
a named numeric vector |
round |
set to TRUE to round converted values |
digits |
number of digits used for round |
str |
a character string vector |
w |
a numeric vector |
x |
a numeric vector (matrix for lm.fit.qr.bare) or data
frame. For xless may be any object that is sensible to
print. For sepUnitsTrans is a character or factor
variable. |
y |
a numeric vector |
sep |
a single character string specifying the delimiter |
extended |
see strsplit in R |
f |
a scaling constant |
title |
a character string to title a window or plot |
... |
arguments passed through to another function |
Frank Harrell
trap.rule(1:100,1:100)
unPaste(c('a;b or c','ab;d','qr;s'), ';')
sepUnitsTrans(c('3 days','4 months','2 years','7'))
set.seed(1)
whichClosest(1:100, 3:5)
whichClosest(1:100, rep(3,20))
whichClosePW(1:100, rep(3,20))
whichClosePW(1:100, rep(3,20), f=.05)
whichClosePW(1:100, rep(3,20), f=1e-10)