image for running samples_clustering_pipeline, listed by creation date
4.5K
This is the Knowledge Engine for Genomics (KnowEnG), an NIH BD2K Center of Excellence, Samples Clustering Pipeline.
This pipeline clusters the columns of a given spreadsheet, where spreadsheet's columns correspond to sample-labels and rows correspond to gene-labels.
There are four clustering methods that one can choose from:
| Options | Method | Parameters |
|---|---|---|
| Clustering | nmf | nmf |
| Consensus Clustering | bootstrapping with nmf | cc_nmf |
| Clustering with network regularization | network-based nmf | net_nmf |
| Consensus Clustering with network regularization | bootstrapping with network-based nmf | cc_net_nmf |
Note: all of the clustering methods mentioned above use the non-negative matrix factorization (nmf) as the main clustering algorithm.
If a pheotype data file is included this pipeline evaluates the clustering result.
There are two evaluation methods:
| Method | Trait Type |
|---|---|
| one-way ANOVA(f_oneway) | Continuous |
| one-way chi square test(chisquare) | Categorical |
docker pull knowengdev/samples_clustering_pipeline: 04_09_2018
mkdir local_results and / or cd local_results
Start the docker image connected to the (local_results) directory. =========== docker run -v local_results:/home/test/run_dir -it knowengdev/samples_clustering_pipeline: 04_09_2018
At the docker image command prompt change to the test directory. =========== .../home# cd test
Set up the environment. ============= .../home/test# make env_setup
| Command | Option |
|---|---|
| make run_nmf | Clustering |
| make run_net_nmf | Clustering with network regularization |
| make run_cc_nmf_serial | Consensus Clustering |
| make run_cc_nmf_parallel_shared | Consensus Clustering |
| make run_cc_net_nmf_serial | Consensus Clustering with network regularization |
| make run_cc_net_nmf_parallel_shared | Consensus Clustering with network regularization |
*** Perform steps 1-3 as described above and use the local_results directory ***
*** see the git hub directions *** Samples Clustering ReadMe on github
*** make sure file named by YAML key "spreadsheet_name:" is in your local_results directory *** *** the path-names inside docker depend on the way you "mount" the run directory in step 4 *** *** therefore you may have to change the YAML path's to ../../ instead of ../ *** *** make sure your custom YAML file is in the local_results directory ***
Start docker with the container connected to your (local_results) directory. =========== docker run -v local_results:/home/test/run_dir -it knowengdev/samples_clustering_pipeline:04_09_2018
Change to the directory mounted in step 4. =========== .../home# cd ./test/run_dir .../home/test/run_dir# ls
*** the files in the local_results directory will be visible in this directory ***
| Key | Value | Comments |
|---|---|---|
| method | nmf, cc_nmf, net_nmf or cc_net_nmf | Choose clustering method |
| gg_network_name_full_path | directory+gg_network_name | Path and file name of the 4 col network file |
| spreadsheet_name_full_path | directory+spreadsheet_name | Path and file name of user supplied gene sets |
| phenotype_data_full_path | directory+phenotype_data_name | Path and file name of user supplied phenotype data |
| threshold | 10 | cluster eval - categorical vs continuous cut off level |
| results_directory | directory | Directory to save the output files |
| tmp_directory | directory | Directory to save the intermediate files |
| rwr_max_iterations | 100 | Maximum number of iterations without convergence in random walk with restart |
| rwr_convergence_tolerence | 1.0e-8 | Frobenius norm tolerence of spreadsheet vector in random walk |
| rwr_restart_probability | 0.7 | alpha in V_(n+1) = alpha * N * Vn + (1-alpha) * Vo |
| rows_sampling_fraction | 0.8 | Select 80% of spreadsheet rows |
| cols_sampling_fraction | 0.8 | Select 80% of spreadsheet columns |
| number_of_bootstraps | 4 | Number of random samplings |
| number_of_clusters | 3 | Estimated number of clusters |
| nmf_conv_check_freq | 50 | Check convergence at given frequency |
| nmf_max_invariance | 200 | Maximum number of invariance |
| nmf_max_iterations | 10000 | Maximum number of iterations |
| nmf_penalty_parameter | 1400 | Penalty parameter |
| top_number_of_genes | 100 | Number of top genes selected |
| processing_method | serial or parallel or distribute | Choose processing method |
| parallelism | number of cores to use in processing | set for memory or speed |
gg_network_name = STRING_experimental_gene_gene.edge spreadsheet_name = ProGENI_rwr20_STExp_GDSC_500.rname.gxc.tsv phenotype_data_name = UCEC_phenotype.txt
genes_variance_{method}_{timestamp}_viz.tsv
| variance | |
|---|---|
| gene 1 | float |
| gene .. | float |
| gene m | float |
genes_by_samples_heatmp_{method}_{timestamp}_viz.tsv
| sample 1 | ... | sample n | |
|---|---|---|---|
| gene 1 | float | ... | float |
| gene ... | float | ... | float |
| gene m | float | ... | float |
consensus_matrix_{method}_{timestamp}_viz.tsv
| sample 1 | ... | sample n | |
|---|---|---|---|
| sample 1 | float | ... | float |
| ... | ... | ... | ... |
| sample n | float | ... | float |
samples_labeled_by_cluster_{method}_{timestamp}_viz.tsv
| cluster | |
|---|---|
| sample 1 | int |
| ... | ... |
| sample n | int |
genes_averages_by_cluster_{method}_{timestamp}_viz.tsv
| cluster 1 | ... | cluster k | |
|---|---|---|---|
| gene 1 | float | ... | float |
| ... | ... | ... | ... |
| gene m | float | ... | float |
top_genes_by_cluster_{method}_{timestamp}_download.tsv
| cluster 1 | ... | cluster k | |
|---|---|---|---|
| gene 1 | 1/0 | ... | 1/0 |
| ... | ... | ... | ... |
| gene m | 1/0 | ... | 1/0 |
phenotypes_labeled_by_cluster_{method}_{timestamp}_viz.tsv
| sample id | Cluster_ID | phenotype 1 | ... | phenotype k |
|---|---|---|---|---|
| sample 1 | int | mixed type | ... | mixed type |
| ... | ... | ... | ... | ... |
| sample n | int | mixed type | ... | mixed type |
clustering_evaluation_result_{timestamp}.tsv
| Measure | Trait_length_after_dropna | Sample_number_after_dropna | chi fval | pval | |
|---|---|---|---|---|---|
| sample 1 | f_oneway | int(more than threshold) | int | float | float |
| ... | ... | ... | ... | ... | ... |
| sample m | chisquare | int(less than threshold) | int | float | float |
Content type
Image
Digest
Size
444.5 MB
Last updated
about 8 years ago
docker pull knowengdev/samples_clustering_pipeline:08_23_2018