SCEnd: A matrix factorization method for single-cell
Project description
SCEnd
A matrix factorization method for single-cell
Pre-requirements
- python3
- numpy
- pandas
- scipy
- scikit-learn
Installation
Installation with pip
To install with pip, run the following from a terminal:
pip install scend
Usage
Basic use
import scend
import pandas as pd
# read your data, the rows in the data represent genes, and the columns represent cells
data = pd.read_csv("data.csv", header=0, index_col=0)
# create a SCEnd object which only return the imputed data
operator = scend.SCEnd(n_features=10, estimate_only=True)
# impute
data_imputed = operator.scend_impute(data)
# create a SCEnd object
operator = scend.SCEnd(n_features=10, estimate_only=False)
# impute
res = operator.scend_impute(data)
# get the results
data_imputed = res["estimate"]
gene_matrix = res["gene latent factor matrix"]
cell_matrix = res["cell latent factor matrix"]
Parameters
SCEnd(n_features=20, steps=10, alpha=1e-5, eps=10, noise_model="Fano", normalize=True, estimate_only=False)
Parameters
-
n_features : int, optional, default: 20
The number of features during the matrix factorizaiton.
-
steps : int, optional, default: 0.5
The max number of iteration.
-
alpha : float, optional, default: 1e-5
gradient update step size. It can be so different with different dataset, please try more for a better result.
-
eps : float, optional, default: 10
The threshold at which the objective function stops updating
-
noise_model: boolean, optional, default: "Fano"
Our hypothetical noise model. We offer three options:
- CV : constant variance
- Fano : Fano factor
- CCV : constant coefficient of variation
We found that generally the fano model is the most stable.
-
normalize : boolean, optional, default: True
By default, SCEnd takes in an unnormalized matrix and performs library size normalization during the denoising step. However, if your data is already normalized or normalization is not desired, you can set normalize=False.
-
estimate_only : boolean, optional, default: False
Generally, the SCEnd returns a dictionary which contains the imputed matrix and gene latent factor matrix and cell latent factor matrix. If you have no need of the latent factor matrix, you can set estimate_only=True.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file scend-1.0.3.tar.gz.
File metadata
- Download URL: scend-1.0.3.tar.gz
- Upload date:
- Size: 8.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.6.1 pkginfo/1.5.0.1 requests/2.24.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.8.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d86192c4dc391528ef6a714a9fb1426e8507d426e3e28cf8d1579007f2595c50
|
|
| MD5 |
1de231230bb0354ee2c8e3594e09de6e
|
|
| BLAKE2b-256 |
cc08b6a0cfa3e4f017e25563b5dcbe74c3d701bdf3d407fb50c1dae0461aadaa
|
File details
Details for the file scend-1.0.3-py3-none-any.whl.
File metadata
- Download URL: scend-1.0.3-py3-none-any.whl
- Upload date:
- Size: 9.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.6.1 pkginfo/1.5.0.1 requests/2.24.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.8.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2dede287f2417603bb6208cc5dc65045f8938cb2edf38ae53912f441c585551d
|
|
| MD5 |
dc0cd0b04dca3a8a805d1f740ec9e446
|
|
| BLAKE2b-256 |
4dce331c9e4e3d92f38f29b4bc0175137949ae86374c41021dbe3c81049e720c
|