spateo.tdr.interpolations
#
Subpackages#
Submodules#
Package Contents#
Functions#
|
Learn a continuous mapping from space to gene expression pattern with the deep neural net model. |
|
Learn a continuous mapping from space to gene expression pattern with the Gaussian Process method. |
|
Learn a continuous mapping from space to gene expression pattern with Kernel method (sparseVFC). |
|
Learn a continuous mapping from space to gene expression pattern with the method contained in VTK. |
|
Prepare the X (spatial coordinates), Y (gene expression) and grid points for the kernel or deep model. |
- spateo.tdr.interpolations.deep_intepretation(source_adata: anndata.AnnData, target_points: numpy.ndarray | None = None, keys: str | list = None, spatial_key: str = 'spatial', layer: str = 'X', max_iter: int = 1000, data_batch_size: int = 2000, autoencoder_batch_size: int = 50, data_lr: float = 0.0001, autoencoder_lr: float = 0.0001, **kwargs) anndata.AnnData [source]#
Learn a continuous mapping from space to gene expression pattern with the deep neural net model.
- Parameters:
- source_adata
AnnData object that contains spatial (numpy.ndarray) in the obsm attribute.
- target_points
The spatial coordinates of new data point. If target_coords is None, generate new points based on grid_num.
- keys
Gene list or info list in the obs attribute whose interpolate expression across space needs to learned.
- spatial_key
The key in
.obsm
that corresponds to the spatial coordinate of each bucket.- layer
If
'X'
, uses.X
, otherwise uses the representation given by.layers[layer]
.- max_iter
The maximum iteration the network will be trained.
- data_batch_size
The size of the data sample batches to be generated in each iteration.
- autoencoder_batch_size
The size of the auto-encoder training batches to be generated in each iteration. Must be no greater than batch_size. .
- data_lr
The learning rate for network training.
- autoencoder_lr
The learning rate for network training the auto-encoder. Will have no effect if network_dim equal data_dim.
- **kwargs
Additional parameters that will be passed to the training step of the deep neural net.
- Returns:
an anndata object that has interpolated expression.
- Return type:
interp_adata
- spateo.tdr.interpolations.gp_interpolation(source_adata: anndata.AnnData, target_points: numpy.ndarray | None = None, keys: str | list = None, spatial_key: str = 'spatial', layer: str = 'X', training_iter: int = 50, device: str = 'cpu', method: Literal[SVGP, ExactGP] = 'SVGP', batch_size: int = 1024, shuffle: bool = True, inducing_num: int = 512) anndata.AnnData [source]#
Learn a continuous mapping from space to gene expression pattern with the Gaussian Process method.
- Parameters:
- source_adata
AnnData object that contains spatial (numpy.ndarray) in the obsm attribute.
- target_points
The spatial coordinates of new data point. If target_coords is None, generate new points based on grid_num.
- keys
Gene list or info list in the obs attribute whose interpolate expression across space needs to learned.
- spatial_key
The key in
.obsm
that corresponds to the spatial coordinate of each bucket.- layer
If
'X'
, uses.X
, otherwise uses the representation given by.layers[layer]
.- training_iter
Max number of iterations for training.
- device
Equipment used to run the program. You can also set the specified GPU for running.
E.g.: '0'
.
- Returns:
an anndata object that has interpolated expression.
- Return type:
interp_adata
- spateo.tdr.interpolations.kernel_interpolation(source_adata: anndata.AnnData, target_points: numpy.ndarray | None = None, keys: str | list = None, spatial_key: str = 'spatial', layer: str = 'X', lambda_: float = 0.02, lstsq_method: str = 'scipy', **kwargs) anndata.AnnData [source]#
Learn a continuous mapping from space to gene expression pattern with Kernel method (sparseVFC).
- Parameters:
- source_adata
AnnData object that contains spatial (numpy.ndarray) in the obsm attribute.
- target_points
The spatial coordinates of new data point. If target_coords is None, generate new points based on grid_num.
- keys
Gene list or info list in the obs attribute whose interpolate expression across space needs to learned.
- spatial_key
The key in
.obsm
that corresponds to the spatial coordinate of each bucket.- layer
If
'X'
, uses.X
, otherwise uses the representation given by.layers[layer]
.- lambda
Represents the trade-off between the goodness of data fit and regularization. Larger Lambda_ put more weights on regularization.
- lstsq_method
The name of the linear least square solver, can be either ‘scipy` or douin.
- **kwargs
Additional parameters that will be passed to SparseVFC function.
- Returns:
an anndata object that has interpolated expression.
- Return type:
interp_adata
- spateo.tdr.interpolations.vtk_interpolation(source_adata: anndata.AnnData, target_points: numpy.ndarray | None = None, keys: str | list = None, spatial_key: str = 'spatial', layer: str = 'X', radius: float | None = None, n_points: int | None = None, kernel: Literal[shepard, gaussian, linear] = 'shepard', null_strategy: Literal[0, 1, 2] = 1, null_value: int | float = 0) anndata.AnnData [source]#
Learn a continuous mapping from space to gene expression pattern with the method contained in VTK.
- Parameters:
- source_adata
AnnData object that contains spatial (numpy.ndarray) in the obsm attribute.
- target_points
The spatial coordinates of new data point. If target_coords is None, generate new points based on grid_num.
- keys
Gene list or info list in the obs attribute whose interpolate expression across space needs to learned.
- spatial_key
The key in
.obsm
that corresponds to the spatial coordinate of each bucket.- layer
If
'X'
, uses.X
, otherwise uses the representation given by.layers[layer]
.- radius
Set the radius of the point cloud. If you are generating a Gaussian distribution, then this is the standard deviation for each of x, y, and z.
- n_points
Specify the number of points for the source object to hold. If n_points (number of the closest points to use) is set then radius value is ignored.
- kernel
The kernel of interpolations kernel. Available kernels are: * shepard: vtkShepardKernel is an interpolations kernel that uses the method of Shepard to perform
interpolations. The weights are computed as 1/r^p, where r is the distance to a neighbor point within the kernel radius R; and p (the power parameter) is a positive exponent (typically p=2).
- gaussian: vtkGaussianKernel is an interpolations kernel that simply returns the weights for all
points found in the sphere defined by radius R. The weights are computed as: exp(-(s*r/R)^2) where r is the distance from the point to be interpolated to a neighboring point within R. The sharpness s simply affects the rate of fall off of the Gaussian.
- linear: vtkLinearKernel is an interpolations kernel that averages the contributions of all points in
the basis.
- null_strategy
- Specify a strategy to use when encountering a “null” point during the interpolations process.
Null points occur when the local neighborhood(of nearby points to interpolate from) is empty.
- Case 0: an output array is created that marks points as being valid (=1) or null (invalid =0), and
the nullValue is set as well
Case 1: the output data value(s) are set to the provided nullValue
Case 2: simply use the closest point to perform the interpolations.
- null_value
see above.
- Returns:
an anndata object that has interpolated expression.
- Return type:
interp_adata
- spateo.tdr.interpolations.get_X_Y_grid(adata: anndata.AnnData | None = None, genes: List | None = None, X: numpy.ndarray | None = None, Y: numpy.ndarray | None = None, grid_num: List = [50, 50, 50]) Tuple[numpy.ndarray, numpy.ndarray, numpy.ndarray, numpy.ndarray] [source]#
Prepare the X (spatial coordinates), Y (gene expression) and grid points for the kernel or deep model.
- Parameters:
- adata
AnnData object that contains spatial (numpy.ndarray) in the obsm attribute.
- genes
Gene list whose interpolate expression across space needs to learned. If Y is provided, genes will only be used to retrive the gene annotation info.
- X
The spatial coordinates of each data point.
- Y
The gene expression of the corresponding data point.
- grid_num
Number of grid to generate. Default is 50 for each dimension. Must be non-negative.
- Returns:
spatial coordinates. Y: gene expression of the associated spatial coordinates. Grid: grid points formed with the input spatial coordinates. grid_in_hull: A list of booleans indicates whether the current grid points is within the convex hull formed by
the input data points.
- Return type:
X