cellrank.models.GAMR¶
- class cellrank.models.GAMR(adata, n_knots=5, distribution='gaussian', basis='cr', knotlocs='auto', offset='default', smoothing_penalty=1.0, **kwargs)[source]¶
Wrapper around R’s mgcv package for fitting GAMs.
- Parameters:
adata (
AnnData) – Annotated data object.n_knots (
int) – Number of knots.distribution (
str) – Distribution family in rpy2.robjects.r, such as'gaussian'or'nb'for negative binomial. If'nb', raw count data inrawis always used.basis (
str) – Basis for the smoothing term. See here for valid options.knotlocs (
Literal['auto','density']) –Position of the knots. Can be one of the following:
'auto'- let mgcv handle the knot positions.'density'- position the knots based on the density of the pseudotime.
offset (
Union[ndarray,Literal['default'],None]) – Offset term for the GAM. Only available whendistribution='nb'. If ‘default’, it is calculated according to [Robinson and Oshlack, 2010]. The values are saved inadata.obs['cellrank_offset']. IfNone, no offset is used.smoothing_penalty (
float) – Penalty for the smoothing term. The larger the value, the smoother the fitted curve.kwargs (
Any) – Keyword arguments for gam control.
Attributes table¶
Annotated data object. |
|
Array of shape |
|
Underlying model. |
|
Whether the model is prepared for fitting. |
|
Number of cells in |
|
Filtered weights of shape |
|
Unfiltered weights of shape |
|
Filtered independent variables of shape |
|
Unfiltered independent variables of shape |
|
Filtered independent variables used when calculating default confidence interval, usually same as |
|
Independent variables of shape |
|
Filtered dependent variables of shape |
|
Unfiltered dependent variables of shape |
|
Filtered dependent variables used when calculating default confidence interval, usually same as |
|
Prediction values of shape |
Methods table¶
|
Calculate the confidence interval. |
|
Return a copy of self. |
|
Calculate the confidence interval, if the underlying |
|
Fit the model. |
|
Plot the smoothed gene expression. |
|
Run the prediction. |
|
Prepare the model to be ready for fitting. |
|
De-serialize self from a file. |
|
Serialize self to a file using |
Attributes¶
adata¶
- GAMR.adata¶
Annotated data object.
conf_int¶
- GAMR.conf_int¶
Array of shape
(n_samples, 2)containing the lower and upper bound of the confidence interval.
model¶
- GAMR.model¶
Underlying model.
prepared¶
- GAMR.prepared¶
Whether the model is prepared for fitting.
shape¶
signal¶
w¶
- GAMR.w¶
Filtered weights of shape
(n_filtered_cells,)used for fitting.
w_all¶
- GAMR.w_all¶
Unfiltered weights of shape
(n_cells,).
x¶
- GAMR.x¶
Filtered independent variables of shape
(n_filtered_cells, 1)used for fitting.
x_all¶
- GAMR.x_all¶
Unfiltered independent variables of shape
(n_cells, 1).
x_hat¶
x_test¶
- GAMR.x_test¶
Independent variables of shape
(n_samples, 1)used for prediction.
y¶
- GAMR.y¶
Filtered dependent variables of shape
(n_filtered_cells, 1)used for fitting.
y_all¶
- GAMR.y_all¶
Unfiltered dependent variables of shape
(n_cells, 1).
y_hat¶
y_test¶
Methods¶
confidence_interval¶
copy¶
default_confidence_interval¶
- GAMR.default_confidence_interval(x_test=None, **kwargs)¶
Calculate the confidence interval, if the underlying
modelhas no method for it.This formula is taken from [DeSalvo, 1970], eq. 5.
- Parameters:
- Return type:
- Returns:
: Returns self and updates the following fields:
Also updates the following fields:
fit¶
- GAMR.fit(x=None, y=None, w=None, **kwargs)[source]¶
Fit the model.
- Parameters:
x (
ndarray|None) – Independent variables, array of shape(n_samples, 1). IfNone, usex.y (
ndarray|None) – Dependent variables, array of shape(n_samples, 1). IfNone, usey.w (
ndarray|None) – Optional weights ofx, array of shape(n_samples,). IfNone, usew.kwargs (
Any) – Keyword arguments for underlyingmodel’s fitting function.
- Return type:
- Returns:
: Fits the model and returns self. Updates the following fields by filtering out \(0\) weights
w:
plot¶
- GAMR.plot(figsize=(8, 5), same_plot=False, hide_cells=False, perc=None, fate_prob_cmap=<matplotlib.colors.ListedColormap object>, cell_color=None, lineage_color='black', alpha=0.8, lineage_alpha=0.2, title=None, size=15, lw=2, cbar=True, margins=0.015, xlabel='pseudotime', ylabel='expression', conf_int=True, lineage_probability=False, lineage_probability_conf_int=False, lineage_probability_color=None, obs_legend_loc='best', dpi=None, fig=None, ax=None, return_fig=False, save=None, **kwargs)¶
Plot the smoothed gene expression.
- Parameters:
same_plot (
bool) – Whether to plot all trends in the same plot.hide_cells (
bool) – Whether to hide the cells.perc (
tuple[float,float]) – Percentile by which to clip the fate probabilities.fate_prob_cmap (
ListedColormap) – Colormap to use when coloring in the fate probabilities.cell_color (
str|None) – Key inobsorvar_namesused for coloring the cells.lineage_color (
str) – Color for the lineage.alpha (
float) – Alpha value in \([0, 1]\) for the transparency of cells.lineage_alpha (
float) – Alpha value in \([0, 1]\) for the transparency lineage confidence intervals.size (
int) – Size of the points.lw (
float) – Line width for the smoothed values.cbar (
bool) – Whether to show the colorbar.margins (
float) – Margins around the plot.xlabel (
str) – Label on the x-axis.ylabel (
str) – Label on the y-axis.conf_int (
bool) – Whether to show the confidence interval.lineage_probability (
bool) – Whether to show smoothed lineage probability as a dashed line. Note that this will require 1 additional model fit.lineage_probability_conf_int (
bool|float) – Whether to compute and show smoothed lineage probability confidence interval.lineage_probability_color (
str|None) – Color to use when plotting the smoothedlineage_probability. IfNone, it’s the same aslineage_color. Only used whenshow_lineage_probability = True.obs_legend_loc (
str|None) – Location of the legend whencell_colorcorresponds to a categorical variable.dpi (
int) – Dots per inch.save (
str|None) – Filename where to save the plot. IfNone, just shows the plots.
- Return type:
- Returns:
: Nothing, just plots the figure. Optionally saves it based on
save.
predict¶
- GAMR.predict(x_test=None, key_added='_x_test', level=None, **kwargs)[source]¶
Run the prediction.
This method can also compute the confidence interval.
- Parameters:
x_test (
ndarray|None) – Array of shape(n_samples,)used for prediction. IfNone, usex_test.key_added (
str) – Attribute name where to save thex_testfor later use. IfNone, don’t save it.kwargs – Keyword arguments for underlying
model’s prediction method.level (
float|None) – Confidence level for confidence interval calculation. IfNone, don’t compute the confidence interval. Must be in \([0, 1]\).
- Return type:
- Returns:
: Returns and updates the following fields:
prepare¶
- GAMR.prepare(*args, **kwargs)[source]¶
Prepare the model to be ready for fitting.
This also removes the zero and negative weights and prepares the design matrix.
- Parameters:
signal –
The observation-aligned quantity to fit along the trajectory. Either a
Signal(Gene,ObsorObsm) or, as a shorthand, a gene name invar_names(equivalent toGene).Added in version 2.3.
lineage – Name of the lineage. If
None, all weights will be set to \(1\).time_key – Key in
obswhere the pseudotime is stored.backward – Direction of the process.
time_range –
Specify start and end times:
data_key –
Deprecated since version 2.4: Pass a
Signalviasignalinstead, e.g.Gene(name, layer=...)orObs(name).use_raw –
Deprecated since version 2.4: Pass
Gene(name, use_raw=True)viasignalinstead.gene –
Deprecated since version 2.4: Renamed to
signal, which also acceptsSignalobjects.threshold – Consider only cells with weights >
thresholdwhen estimating the test endpoint. IfNone, use the median of the weights.weight_threshold – Set all weights below
weight_thresholdtoweight_thresholdif afloat, or to the second value, if atuple.filter_cells – Filter out all cells with expression values lower than this threshold.
n_test_points – Number of test points. If
None, use the original points based onthreshold.args (Any)
kwargs (Any)
- Return type:
- Returns:
: Nothing, just updates the following fields:
read¶
- static GAMR.read(fname, adata=None, copy=False)¶
De-serialize self from a file.
- Parameters:
- Return type:
IOMixin- Returns:
: The de-serialized object.