Denoising Expression data with a Weighted Affinity Kernel and Self-Supervision.
pip install DEWAKSS==0.99999991
We investigate the tuning of kNN- and diffusion-based denoising methods with a novel non-stochastic method for optimally preserving biologically relevant informative variance in single-cell data. The framework, Denoising Expression data with a Weighted Affinity Kernel and Self-Supervision (DEWÄKSS), uses a self-supervised technique to tune its parameters.
Install latest version by cloning this repository
git clone https://gitlab.com/Xparx/dewakss.git
cd dewakss
and then in the dewakss directory:
pip install .
For faster execution times DEWAKSS currently relies on the math kernel library (MKL) from intel. The most reliable ways to get support from MKL is to get the latest versio of python anaconda
. Else the latest version of MKL needs to be installed and the location to the shared object files needs to be added to LD_LIBRARY_PATH
.
To reproduce the results from Tjarnberg2020 run the command
pip install DEWAKSS==0.99rc2020
The appropriate notebooks to follow can be found in the tag Tjarnberg2020
The simplest way to use DEWAKSS is to simply run the following
import dewakss.denoise as dewakss
dewaxer = dewakss.DEWAKSS(adata)
dewaxer.fit(adata)
dewaxer.transform(adata, copy=False)
where adata
is either an expression matrix or an AnnData object with genes as columns and cells/samples as rows.
To explore the results one can use
dewaxer.plot_global_performance()
If one chooses to run diffusion:
N=6
dewaxer = dewakss.DEWAKSS(adata, iterations=N)
these can be explored using
dewaxer.plot_diffusion_performance()