Computes a variety of types of predicted values for fits from
`lrm`

and `orm`

, either from the original dataset or for new
observations. The `Mean.lrm`

and `Mean.orm`

functions produce
an R function to compute the predicted mean of a numeric ordered
response variable given the linear predictor, which is assumed to use
the first intercept when it was computed. The returned function has two
optional arguments if confidence intervals are desired: `conf.int`

and the design matrix `X`

. When this derived function is called
with nonzero `conf.int`

, an attribute named `limits`

is attached
to the estimated mean. This is a list with elements `lower`

and
`upper`

containing normal approximations for confidence limits
using the delta method.

```
# S3 method for lrm
predict(object, …, type=c("lp", "fitted",
"fitted.ind", "mean", "x", "data.frame",
"terms", "cterms", "ccterms", "adjto","adjto.data.frame",
"model.frame"), se.fit=FALSE, codes=FALSE)
# S3 method for orm
predict(object, …, type=c("lp", "fitted",
"fitted.ind", "mean", "x", "data.frame",
"terms", "cterms", "ccterms", "adjto","adjto.data.frame",
"model.frame"), se.fit=FALSE, codes=FALSE)
```# S3 method for lrm
Mean(object, codes=FALSE, …)
# S3 method for orm
Mean(object, codes=FALSE, …)

object

a object created by `lrm`

or `orm`

…

arguments passed to `predictrms`

, such as `kint`

and `newdata`

(which is used if you are predicting `out of data`

). See
`predictrms`

to see how NAs are handled. Ignored for other functions.

type

See `predict.rms`

for ```
"x", "data.frame", "terms", "cterms",
"ccterms", "adjto", "adjto.data.frame"
```

and
`"model.frame"`

. `type="lp"`

is used to get
linear predictors (using the first intercept by default; specify
`kint`

to use others). `type="fitted"`

is used to get all the probabilities \(Y\geq j\).
`type="fitted.ind"`

gets all the individual probabilities
\(Y=j\) (not recommended for `orm`

fits). For an ordinal response
variable, `type="mean"`

computes
the estimated mean \(Y\) by summing values of \(Y\)
multiplied by the estimated \(Prob(Y=j)\). If \(Y\) was a character or
`factor`

object, the levels are the character values or factor levels,
so these must be translatable to numeric, unless `codes=TRUE`

.
See the Hannah and Quigley reference below for the method of estimating
(and presenting) the mean score. If you specify
`type="fitted","fitted.ind","mean"`

you may not specify `kint`

.

se.fit

applies only to `type="lp"`

, to get standard errors.

codes

if `TRUE`

, `type="mean"`

, `Mean.lrm`

, and `Mean.orm`

use the integer codes \(1,2,\ldots,k\) for the \(k\)-level response
in computing the predicted mean response.

a vector (`type="lp"`

with `se.fit=FALSE`

, or
`type="mean"`

or only one
observation being predicted), a list (with elements `linear.predictors`

and `se.fit`

if `se.fit=TRUE`

), a matrix (`type="fitted"`

or `type="fitted.ind"`

), a data frame, or a design matrix. For
`Mean.lrm`

and `Mean.orm`

, the result is an R function.

Hannah M, Quigley P: Presentation of ordinal regression analysis on the original scale. Biometrics 52:771--5; 1996.

# NOT RUN { # See help for predict.rms for several binary logistic # regression examples # Examples of predictions from ordinal models set.seed(1) y <- factor(sample(1:3, 400, TRUE), 1:3, c('good','better','best')) x1 <- runif(400) x2 <- runif(400) f <- lrm(y ~ rcs(x1,4)*x2, x=TRUE) #x=TRUE needed for se.fit # Get 0.95 confidence limits for Prob[better or best] L <- predict(f, se.fit=TRUE) #omitted kint= so use 1st intercept plogis(with(L, linear.predictors + 1.96*cbind(-se.fit,se.fit))) predict(f, type="fitted.ind")[1:10,] #gets Prob(better) and all others d <- data.frame(x1=c(.1,.5),x2=c(.5,.15)) predict(f, d, type="fitted") # Prob(Y>=j) for new observation predict(f, d, type="fitted.ind") # Prob(Y=j) predict(f, d, type='mean', codes=TRUE) # predicts mean(y) using codes 1,2,3 m <- Mean(f, codes=TRUE) lp <- predict(f, d) m(lp) # Can use function m as an argument to Predict or nomogram to # get predicted means instead of log odds or probabilities dd <- datadist(x1,x2); options(datadist='dd') m plot(Predict(f, x1, fun=m), ylab='Predicted Mean') # Note: Run f through bootcov with coef.reps=TRUE to get proper confidence # limits for predicted means from the prop. odds model options(datadist=NULL) # }