Copyright belongs to Yuan Liu, Sichuan University, CIC
Cite: Y,Liu, Y,Liang, QF,Kuang, FF,Xie, YY,Hao, ZN,Wen, ML,Li, Journal of Chemometrics. 2018a.
Cite: Y,Liu, RY,Jing, ZN,Wen, ML,Li., Frontier in pharmacology.2019.
Post-modified NMF is an algorithm which is able to estimate different type of components from heterogeneous samples.
Also, this unsupervised algorithm we proposed here, is capable of estimating the gene expression profiles and contents of the major cell types of gene expressed samples without any prior reference knowledge.
There are two functions of Matlab has been released here. The main function 'Post-modified NMF' and 'nnmf'.
- 'Post-modified NMF.m' for the post-modification
- 'nnmf.m' for Non-negative matrix factorization
Input | Explanation |
---|---|
'expression_profile' | The input of candidate gene-expressed profile for factorization,each line is the expression level for a gene, and each column is a bulk sample. This input should remove headers, and make sure the data type is 'double'. |
'k' | The number of main factors that going to involve at factorization |
'rep' | The time of running the whole processing,and take the average as output. The defualt 'rep' is 1. |
'replicates' | The number of times to repeat the factorization (defualt 100), using new random starting values for W and H, except at the first replication if w0 and h0 are given (default 1). This tends to be most beneficial with the 'mult' algorithm.(details please reach function 'nnmf') |
[WM,HM]=Post_modified_NMF(expression_profile,k,rep,replicates)
Factors the M-by-N (M genes and N samples)matrix A into non-negative factors WM (M-by-K) and HM (K-by-N). both WM and HM have been post-modified.
Output | Description |
---|---|
WM (M-by-K) | The exprassion-profiles of M genes of K factors. |
HM (K-by-N) | The weights of K factor of N samples. |
-
a. Prepare expression profile which is going to be factorized as "double" data type. b. Comfirm the number of main factors (k-value) by using factor analysis or other method.
-
a. Load 'expression profile' and 'k' into the same workspace where you saved 'Post-modified NMF'. b. Set parameters 'rep' and 'replicates' (or use default).
-
Run
[WM,HM]=Post_modified_NMF(expression_profile,k,rep,replicates) %example: [WM,HM]=Post_modified_NMF(A,2,100,100)
-
Done! WM and HM will generateand store separately at the same workspace.