def main(cmdline=None): parser = make_parser() args = parser.parse_args(cmdline) sep = models.get_seperator(args.sep) libraries = models.load_library_tables(args.libraries, sep) fastqs = dict(find_fastqs(libraries)) dag = generate_star_rsem_analysis(args, libraries, fastqs) print(dag) return 0
def main(cmdline=None): parser = make_parser() args = parser.parse_args(cmdline) env = Environment(loader=PackageLoader('woldrnaseq', 'templates')) sep = models.get_seperator(args.sep) experiments = models.load_experiments([args.experiments], sep) libraries = models.load_library_tables([args.libraries], sep) samstats = models.load_all_samstats(libraries) distribution = models.load_all_distribution(libraries) coverage = models.load_all_coverage(libraries) seen_libraries = set() experiment_report = {} transcript_library_plots = [] plots = {} plot_handle = itertools.count() for experiment in experiments: scores = models.load_correlations(experiment) quantifications = models.load_quantifications(experiment, args.quantification) coverage_handle = str(next(plot_handle)) plots[coverage_handle] = make_coverage_plot(coverage, experiments, experiment) distribution_handle = str(next(plot_handle)) plots[distribution_handle] = make_distribution_plot(distribution, experiments, experiment) spearman_filename = make_correlation_heatmap(scores, 'rafa_spearman', experiment) spike_variance_handle = str(next(plot_handle)) plots[spike_variance_handle] = make_spikein_variance_plot(quantifications, experiments, experiment) library_ids = experiments[experiment] seen_libraries.update(set(library_ids)) for library_id in library_ids: transcript_handle = str(next(plot_handle)) plots[transcript_handle] = make_spikein_per_transcript_plot( quantifications, library_id, args.quantification) transcript_library_plots.append(transcript_handle) experiment_report[experiment] = { 'samstats': samstats.select(lambda x: x in library_ids).to_html(), 'spearman': scores.rafa_spearman.to_html(), 'coverage': coverage_handle, 'distribution': distribution_handle, 'spearman_plot': spearman_filename, 'spike_variance': spike_variance_handle, } spare_libraries = set(libraries.index).difference(seen_libraries) print(libraries.index) print(seen_libraries) print(spare_libraries) script, plot_divs = components(plots) template = env.get_template('rnaseq.html') page = template.render( experiments=experiments, experiment_report=experiment_report, transcript_library_plots=transcript_library_plots, plot_divs=plot_divs, bokeh_script=script, ) with open(args.output, 'wt') as outstream: outstream.write(page)