View source: R/superPC_optimWeibullParams.R
OptimGumbelMixParams | R Documentation |
Calculate the parameters which minimise the negative log- likelihood of a mixture of two Weibull Extreme Value distributions.
OptimGumbelMixParams(
max_tControl_vec,
pathwaySize_vec,
initialVals = c(p = 0.5, mu1 = 1, s1 = 0.5, mu2 = 1, s2 = 0.5),
optimMethod = "L-BFGS-B",
lowerBD = c(0, -Inf, 0, -Inf, 0),
upperBD = c(1, Inf, Inf, Inf, Inf)
)
max_tControl_vec |
A vector of the maximum absolute |
pathwaySize_vec |
A vector of the number of genes in each pathway. |
initialVals |
A named vector of initial values for the Weibull parameters. The values are
|
optimMethod |
Which numerical optimization routine to pass to the
|
lowerBD |
A vector of the lower bounds on the |
upperBD |
A vector of the upper bounds on the |
The likelihood function is equation (4) in Chen et al (2008): a
mixture of two Gumbel Extreme Value probability density functions, with
mixing proportion p
. Within the code of this function, the values
mu1
, mu2
and s1
, s2
are placeholders for the
mean and precision, respectively.
A computational note: the "L-BFGS-B"
option within the
optim
function requires a bounded function or
likelihood. We therefore replaced Inf
with 10 ^ 200
in the
check for boundedness. As we are attempting to minimise the negative log-
likelihood, this maximum machine value is effectively +Inf
.
See https://doi.org/10.1093/bioinformatics/btn458 for more information.
A named vector of the estimated values for the parameters which minimize the negative log-likelihood of the mixture Weibull Extreme Value distributions.
optim
; GumbelMixpValues
;
pathway_tControl
; SuperPCA_pVals
# DO NOT CALL THIS FUNCTION DIRECTLY.
# Use SuperPCA_pVals() instead.
## Not run:
### Load the Example Data ###
data("colon_pathwayCollection")
### Simulate Maximum Absolute Control t-Values ###
# The SuperPCA algorithm defaults to 20 threshold values; the example
# pathway collection has 15 pathways.
t_mat <- matrix(rt(15 * 20, df = 5), nrow = 15)
absMax <- function(vec){
vec[which.max(abs(vec))]
}
tAbsMax_num <- apply(t_mat, 1, absMax)
### Calculate Optimal Parameters for the Gumbel Distribution ###
OptimGumbelMixParams(
max_tControl_vec = tAbsMax_num,
pathwaySize_vec = lengths(colon_pathwayCollection$pathways)
)
## End(Not run)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.