mle_connorm: mle_connorm .

View source: R/mle_connorm.r

mle_connormR Documentation

mle_connorm .

Description

Maximum likelihood estimate of normal mean, subject to linear constraints.

Usage

mle_connorm(y, A, b, eta, Sigma = NULL, Sigma_eta = Sigma %*% eta, ...)

Arguments

y

an n vector, assumed multivariate normal with mean \mu and covariance \Sigma.

A

an k \times n matrix of constraints.

b

a k vector of inequality limits.

eta

an n vector of the test contrast, \eta.

Sigma

an n \times n matrix of the population covariance, \Sigma. Not needed if Sigma_eta is given.

Sigma_eta

an n vector of \Sigma \eta.

...

dots are passed to uniroot.

Details

Computes the maximum likelihood estimate of unknown mean of a normal vector conditional on linear constraints.

Let y be multivariate normal with unknown mean \mu and known covariance \Sigma. Conditional on Ay \le b for conformable matrix A and vector b, and given constrast vector eta, we compute the maximum likelihood estimate of \eta^{\top}\mu.

Value

The maximum likelihood estimate of \eta^{\top}\mu.

Author(s)

Steven E. Pav shabbychef@gmail.com

References

Reid, S., Taylor, J. and Tibshirani, R. "Post-selection point and interval estimation of signal sizes in Gaussian samples." Can. J. Statistics. 45, no. 2 (2017): 128-148. doi:10.1002/cjs.11320. https://arxiv.org/abs/1405.3340

See Also

the confidence interval function, ci_connorm, the CDF function, pconnorm, the special case code for conditioning on the max, mle_connorm_max

Examples

set.seed(1234)
n <- 10
y <- rnorm(n)
A <- matrix(rnorm(n*(n-3)),ncol=n)
b <- A%*%y + runif(nrow(A))
Sigma <- diag(runif(n))
mu <- rnorm(n)
eta <- rnorm(n)

mval <- mle_connorm(y=y,A=A,b=b,eta=eta,Sigma=Sigma)
# try again, but control tolerance:
mval <- mle_connorm(y=y,A=A,b=b,eta=eta,Sigma=Sigma,tol=1e-8)


epsiwal documentation built on June 10, 2026, 9:06 a.m.