WLEB {edgeR} | R Documentation

## Calculate Weighted Likelihood Empirical Bayes Estimates

### Description

Estimates the parameters which maximize the given log-likelihood matrix using empirical Bayes method.

### Usage

    WLEB(theta, loglik, prior.n=5, covariate=NULL, trend.method="locfit", mixed.df=FALSE,
         span=NULL, overall=TRUE, trend=TRUE, individual=TRUE, m0=NULL, m0.out=FALSE)

### Arguments

`theta` | numeric vector of values of the parameter at which the log-likelihoods are calculated.
`loglik` | numeric matrix of log-likelihood of all the candidates at those values of parameter.
`prior.n` | numeric scaler, estimate of the prior weight, i.e. the smoothing parameter that indicates the weight to put on the common likelihood compared to the individual's likelihood.
`covariate` | numeric vector of values across which a parameter trend is fitted
`trend.method` | method for estimating the parameter trend. Possible values are `"none"`, `"movingave"` and `"loess"`.
`mixed.df` | logical, only used when `trend.method="locfit"`. If `FALSE`, `locfit` uses a polynomial of degree 0. If `TRUE`, `locfit` uses a polynomial of degree 1 for rows with small covariate values. Care is taken to smooth the curve.
`span` | width of the smoothing window, as a proportion of the data set.
`overall` | logical, should a single value of the parameter which maximizes the sum of all the log-likelihoods be estimated?
`trend` | logical, should a parameter trend (against the covariate) which maximizes the local shared log-likelihoods be estimated?
`individual` | logical, should individual estimates of all the candidates after applying empirical Bayes method along the trend be estimated?
`m0` | numeric matrix of local shared log-likelihoods. If `Null`, it will be calculated using the method selected by `trend.method`.
`m0.out` | logical, should local shared log-likelihoods be included in the output?

### Details

This function is a generic function that calculates an overall estimate, trend estimates and individual estimates for each candidate given the values of the log-likelihood of all the candidates at some specified parameter values.

### Value

A list with the following:

`overall` | the parameter estimate that maximizes the sum of all the log-likelihoods.
`trend` | the estimated trended parameters against the covariate.
`individual` | the individual estimates of all the candidates after applying empirical Bayes method along the trend.
`shared.loglik` | the estimated numeric matrix of local shared log-likelihoods

### Author(s)

Yunshun Chen, Gordon Smyth

### See Also

`locfitByCol`, `movingAverageByCol` and `loessByCol` implement the local fit, moving average or loess smoothers.

### Examples

    y <- matrix(rpois(100, lambda=10), ncol=4)
    theta <- 7:14
    loglik <- matrix(0,nrow=nrow(y),ncol=length(theta))
    for(i in 1:nrow(y))
    for(j in 1:length(theta))
    	loglik[i,j] <- sum(dpois(y[i,], theta[j] ,log=TRUE))
    covariate <- log(rowSums(y))
    out <- WLEB(theta, loglik, prior.n=3, covariate)
    out

[Package edgeR version 3.20.9 Index]