|
41 | 41 | "import base64 \n", |
42 | 42 | "import json\n", |
43 | 43 | "from pandas.api.types import CategoricalDtype\n", |
| 44 | + "from collections import defaultdict\n", |
44 | 45 | "\n", |
45 | 46 | "# Visualization\n", |
46 | 47 | "import plotly\n", |
|
327 | 328 | "\n", |
328 | 329 | "{% set enrichr_libraries = MultiChoiceField(\n", |
329 | 330 | " name='enrichr_libraries',\n", |
330 | | - " label='Enrichr Libraries (upto 2)',\n", |
| 331 | + " label='Enrichr Libraries',\n", |
331 | 332 | " descriptions='Enrichr libraries to be visualized. Select one or two libraries',\n", |
332 | 333 | " choices=['Gene Ontology',\n", |
333 | 334 | " 'Pathway',\n", |
|
423 | 424 | "warnings.filterwarnings('ignore')\n", |
424 | 425 | "random.seed(0)\n", |
425 | 426 | "pandas2ri.activate()\n", |
426 | | - "notebook_metadata = dict()\n", |
427 | | - "notebook_metadata[\"tables\"] = dict()\n", |
428 | | - "notebook_metadata[\"figures\"] = dict()\n", |
429 | | - "notebook_metadata[\"input_parameters\"] = dict()\n", |
| 427 | + "notebook_metadata = defaultdict(dict)\n", |
430 | 428 | "if interactive_plot == True:\n", |
431 | 429 | " plot_type='interactive'\n", |
432 | 430 | "else:\n", |
|
444 | 442 | "source": [ |
445 | 443 | "%%appyter code_exec\n", |
446 | 444 | "\n", |
| 445 | + "ip = dict()\n", |
447 | 446 | "\n", |
448 | | - "notebook_metadata[\"input_parameters\"][\"rnaseq_data_filename\"] = rnaseq_data_filename\n", |
449 | | - "notebook_metadata[\"input_parameters\"][\"meta_data_filename\"] = meta_data_filename\n", |
450 | | - "notebook_metadata[\"input_parameters\"][\"meta_class_column_name\"] = meta_class_column_name\n", |
451 | | - "notebook_metadata[\"input_parameters\"][\"control_name\"] = control_name\n", |
452 | | - "\n", |
453 | | - "notebook_metadata[\"input_parameters\"][\"filter_genes\"] = filter_genes\n", |
454 | | - "notebook_metadata[\"input_parameters\"][\"low_expression_threshold\"] = low_expression_threshold\n", |
455 | | - "notebook_metadata[\"input_parameters\"][\"logCPM_normalization\"] = {{logCPM_normalization.value}}\n", |
456 | | - "notebook_metadata[\"input_parameters\"][\"log_normalization\"] = {{log_normalization.value}}\n", |
457 | | - "notebook_metadata[\"input_parameters\"][\"z_normalization\"] = {{z_normalization.value}}\n", |
458 | | - "notebook_metadata[\"input_parameters\"][\"q_normalization\"] = {{q_normalization.value}}\n", |
459 | | - "\n", |
460 | | - "notebook_metadata[\"input_parameters\"][\"visualization_method\"] = \"{{visualization_method.value}}\"\n", |
461 | | - "notebook_metadata[\"input_parameters\"][\"nr_genes\"] = nr_genes\n", |
462 | | - "notebook_metadata[\"input_parameters\"][\"gene_list_for_clustergrammer\"] = gene_list_for_clustergrammer\n", |
463 | | - "notebook_metadata[\"input_parameters\"][\"clustering_topk\"] = clustering_topk\n", |
464 | | - "\n", |
465 | | - "notebook_metadata[\"input_parameters\"][\"diff_gex_method\"] = diff_gex_method\n", |
466 | | - "notebook_metadata[\"input_parameters\"][\"diff_gex_plot_method\"] = diff_gex_plot_method\n", |
467 | | - "notebook_metadata[\"input_parameters\"][\"pvalue_threshold\"] = pvalue_threshold\n", |
468 | | - "notebook_metadata[\"input_parameters\"][\"logfc_threshold\"] = logfc_threshold\n", |
469 | | - "notebook_metadata[\"input_parameters\"][\"gene_topk\"] = gene_topk\n", |
470 | | - "notebook_metadata[\"input_parameters\"][\"enrichr_libraries\"] = enrichr_libraries\n", |
471 | | - "notebook_metadata[\"input_parameters\"][\"nr_genesets\"] = nr_genesets\n", |
472 | | - "notebook_metadata[\"input_parameters\"][\"small_molecule_method\"] = small_molecule_method\n", |
473 | | - "notebook_metadata[\"input_parameters\"][\"l1000_topk\"] = l1000_topk\n", |
474 | | - "notebook_metadata[\"input_parameters\"][\"nr_drugs\"] = nr_drugs\n", |
475 | | - "\n" |
| 447 | + "ip |= dict(zip([\"rnaseq_data_filename\", \"meta_data_filename\", \"meta_class_column_name\", \"control_name\"], [rnaseq_data_filename, meta_data_filename, meta_class_column_name, control_name]))\n", |
| 448 | + "ip |= dict(zip([\"filter_genes\", \"low_expression_threshold\", \"logCPM_normalization\", \"log_normalization\", \"z_normalization\", \"q_normalization\"], [filter_genes, low_expression_threshold, {{logCPM_normalization.value}}, {{log_normalization.value}}, {{z_normalization.value}}, {{q_normalization.value}}]))\n", |
| 449 | + "ip |= dict(zip([\"visualization_method\", \"nr_genes\", \"gene_list_for_clustergrammer\", \"clustering_topk\"], [\"{{visualization_method.value}}\", nr_genes, gene_list_for_clustergrammer, clustering_topk]))\n", |
| 450 | + "ip |= dict(zip([\"diff_gex_method\", \"diff_gex_plot_method\", \"pvalue_threshold\", \"logfc_threshold\", \"gene_topk\", \"enrichr_libraries\", \"nr_genesets\", \"small_molecule_method\", \"l1000_topk\", \"nr_drugs\"], [diff_gex_method, diff_gex_plot_method, pvalue_threshold, logfc_threshold, gene_topk, enrichr_libraries, nr_genesets, small_molecule_method, l1000_topk, nr_drugs]))\n", |
| 451 | + "\n", |
| 452 | + "notebook_metadata[\"input_parameters\"] = ip\n" |
476 | 453 | ] |
477 | 454 | }, |
478 | 455 | { |
|
1112 | 1089 | "outputs": [], |
1113 | 1090 | "source": [ |
1114 | 1091 | "# save metadata of the notebook as json\n", |
| 1092 | + "notebook_metadata['references'] = ref_counter\n", |
1115 | 1093 | "with open(\"notebook_metadata.json\", \"w\") as fw:\n", |
1116 | 1094 | " json.dump(notebook_metadata, fw)" |
1117 | 1095 | ] |
|
0 commit comments