Description Usage Arguments Details Value See Also Examples
PhenoPath learns genomic trajectories in the presence of heterogenous environmental and genetic backgrounds. It takes input gene expression measurements that are modelled by a single unobserved factor (the "trajectory"). The regulation of genes along the trajectory is perturbed by an additional set of covariates (such as genetic or environmental status) allowing for the identification of covariate-trajectory interactions. The model is fitted using mean-field co-ordinate ascent variational inference.
1 2 |
exprs_obj |
Input gene expression, either
|
x |
The covariate vector, either
|
sce_assay |
The assay from |
elbo_tol |
The relative pct change in the ELBO below which is considered converged. See convergence section in details below. |
z_init |
The initialisation of the latent trajectory. Should be one of
|
... |
Additional arguments to be passed to |
Input expression
If an SummarizedExperiment
is provided, assay(exprs_obj, sce_assay)
is used.
This is assumed to be in
a form that is suitably normalised and approximately normal, such as
the log of TPM values (plus a suitable offset) or
similar.
Encoding covariates
See the vignette.
Convergence of variational inference
It is strongly recommended to call plot_elbo(phenopath_fit)
after the fitting procedure to
ensure the ELBO has approximately converged (though convergence metrics are printed during the
fitting process). For a good introduction to variational inference see Blei, D.M., Kucukelbir, A. & McAuliffe, J.D., 2017. Variational Inference: A Review for Statisticians. Journal of the American Statistical Association.
Additional arguments
Addition arguments to clvm
are passed via ...
. For full documentation, call ?clvm
.
Some notable options:
thin
- The ELBO is expensive to compute for larger datasets. The model will
compute the ELBO and compare convergence every thin
iterations.
q
and tau_q
- Priors (such as capture times) for the latent space. Note that
model_mu
should be true if q
is non-zero.
scale_y
By default the input expression is centre-scaled for each gene. If scale_y
is FALSE
this does not happen - but note that model_mu
should be TRUE
in such a case.
An S3 structure with the following entries:
m_z
The converged mean estimates of the trajectory
s_z
The converged standard deviation estimates of z
m_beta
A P-by-G matrix of interaction coefficients
s_beta
A P-by-G matrix of interaction standard deviations
clvm
for the underlying CAVI function, trajectory
to extract the latent trajectory, interaction_effects
for the interaction effect
sizes, significant_interactions
for the results of Bayesian significance testing.
1 2 3 4 5 | sim <- simulate_phenopath() # returns a list with gene expression in y and covariates in x
fit <- phenopath(sim$y, sim$x, elbo_tol = 1e-2)
# Extract the trajectory
z <- trajectory(fit)
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.