{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Cookbook SMRT Link Webservices using pbcommand" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "0.6.0\n" ] } ], "source": [ "# https://github.com/PacificBiosciences/pbcommand\n", "# install via\n", "# pip install -e git://github.com/PacificBiosciences/pbcommand.git#egg=pbcommand`\n", "import pbcommand\n", "from pbcommand.services import ServiceAccessLayer\n", "print pbcommand.get_version()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Configure and Get Status" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "collapsed": false }, "outputs": [], "source": [ "host = \"smrtlink-beta\"\n", "port = 8081\n", "sal = ServiceAccessLayer(host, port)" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "{u'id': u'smrtlink_analysis',\n", " u'message': u'Services have been up for 257 hours, 10 minutes and 1.427 second.',\n", " u'uptime': 925801427,\n", " u'user': u'secondarytest',\n", " u'uuid': u'6742aebc-bce8-45b6-acfe-422c9d941884',\n", " u'version': u'0.3.0-bbcc1b5'}" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "sal.get_status()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Get SubreadSet from SMRT Link Services" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Get SubreadSet details by UUID" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "collapsed": true }, "outputs": [], "source": [ "# Example SubreadSet\n", "subreadset_uuid = \"4463c7d8-4b6e-43a3-93ff-325628066a0b\"" ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "collapsed": true }, "outputs": [], "source": [ "ds = sal.get_subreadset_by_id(subreadset_uuid)" ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "(u'm54008_160614_021525',\n", " u'SMS_FleaBenchmark_15kbEcoli_trypsin_A8_061316',\n", " 19251,\n", " 12469,\n", " u'A01',\n", " u'/pbi/collections/315/3150259/r54008_20160614_021104/1_A01/m54008_160614_021525.subreadset.xml',\n", " u'4463c7d8-4b6e-43a3-93ff-325628066a0b')" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "ds['metadataContextId'], ds['name'], ds['id'], ds['jobId'], ds['wellName'], ds['path'], ds['uuid']" ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "(u'4463c7d8-4b6e-43a3-93ff-325628066a0b',\n", " u'4463c7d8-4b6e-43a3-93ff-325628066a0b')" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# or get by Int id\n", "dx = sal.get_subreadset_by_id(ds['id'])\n", "dx['uuid'], ds['uuid']" ] }, { "cell_type": "code", "execution_count": 10, "metadata": { "collapsed": true }, "outputs": [], "source": [ "# Get the Import Job associated with the SubreadSet. This Job computes the metrics at import time" ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "collapsed": true }, "outputs": [], "source": [ "import_job_id = ds['jobId']" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Get SubreadSet Import Job and Import Report Metrics" ] }, { "cell_type": "code", "execution_count": 12, "metadata": { "collapsed": true }, "outputs": [], "source": [ "import_job = sal.get_import_job_by_id(import_job_id)" ] }, { "cell_type": "code", "execution_count": 13, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import_job" ] }, { "cell_type": "code", "execution_count": 14, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "'SUCCESSFUL'" ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import_job.state" ] }, { "cell_type": "code", "execution_count": 15, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "'Job import-dataset'" ] }, "execution_count": 15, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import_job.name" ] }, { "cell_type": "code", "execution_count": 16, "metadata": { "collapsed": false }, "outputs": [], "source": [ "import_report_attributes = sal.get_import_job_report_attrs(import_job.id)" ] }, { "cell_type": "code", "execution_count": 17, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "{u'adapter_xml_report.adapter_dimers': 0.02,\n", " u'adapter_xml_report.short_inserts': 1.63,\n", " u'raw_data_report.insert_length': 5974,\n", " u'raw_data_report.nbases': 2769788750,\n", " u'raw_data_report.nreads': 539045,\n", " u'raw_data_report.read_length': 5138,\n", " u'raw_data_report.read_n50': 10250}" ] }, "execution_count": 17, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import_report_attributes # This are what are displayed in SMRT Link for Import Job Types" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Get Analysis (pbsmrtpipe) Job" ] }, { "cell_type": "code", "execution_count": 18, "metadata": { "collapsed": true }, "outputs": [], "source": [ "analysis_job_id = 12524 # Random Example Job" ] }, { "cell_type": "code", "execution_count": 19, "metadata": { "collapsed": true }, "outputs": [], "source": [ "analysis_job = sal.get_analysis_job_by_id(analysis_job_id)" ] }, { "cell_type": "code", "execution_count": 20, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 20, "metadata": {}, "output_type": "execute_result" } ], "source": [ "analysis_job" ] }, { "cell_type": "code", "execution_count": 21, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "u'pbsmrtpipe.pipelines.sa3_sat'" ] }, "execution_count": 21, "metadata": {}, "output_type": "execute_result" } ], "source": [ "analysis_job.settings['pipelineId']" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Get the Entry Points to the Pipeline" ] }, { "cell_type": "code", "execution_count": 22, "metadata": { "collapsed": true }, "outputs": [], "source": [ "# Get Entry Points Use\n", "eps = sal.get_analysis_job_entry_points(analysis_job_id)" ] }, { "cell_type": "code", "execution_count": 23, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "JobEntryPoint(job_id=12524, dataset_uuid=u'3adaa998-8ba9-4f7c-97c4-2ef343b419bb', dataset_metatype=u'PacBio.DataSet.SubreadSet')\n", "JobEntryPoint(job_id=12524, dataset_uuid=u'c2f73d21-b3bf-4b69-a3a3-6beeb7b22e26', dataset_metatype=u'PacBio.DataSet.ReferenceSet')\n" ] } ], "source": [ "for e in eps:\n", " print e" ] }, { "cell_type": "markdown", "metadata": { "collapsed": true }, "source": [ "### Get Report Metrics for Analysis Job" ] }, { "cell_type": "code", "execution_count": 24, "metadata": { "collapsed": true }, "outputs": [], "source": [ "analysis_report_attributes = sal.get_analysis_job_report_attrs(analysis_job_id)" ] }, { "cell_type": "code", "execution_count": 25, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "{u'coverage.depth_coverage_mean': 147.6752298049565,\n", " u'coverage.missing_bases_pct': 0.0,\n", " u'mapping_stats.mapped_readlength_max': 16470,\n", " u'mapping_stats.mapped_readlength_mean': 3743,\n", " u'mapping_stats.mapped_readlength_n50': 5974,\n", " u'mapping_stats.mapped_readlength_q95': 10400,\n", " u'mapping_stats.mapped_reads_n': 2319,\n", " u'mapping_stats.mapped_subread_bases_n': 7654453,\n", " u'mapping_stats.mapped_subread_concordance_mean': 0.8006,\n", " u'mapping_stats.mapped_subread_readlength_max': 4339.0,\n", " u'mapping_stats.mapped_subread_readlength_mean': 1055,\n", " u'mapping_stats.mapped_subreadlength_n50': 1328,\n", " u'mapping_stats.mapped_subreadlength_q95': 2070,\n", " u'mapping_stats.mapped_subreads_n': 7257,\n", " u'sat.accuracy': 1.0,\n", " u'sat.coverage': 1.0,\n", " u'sat.instrument': u'54082',\n", " u'sat.mapped_readlength_mean': 3743,\n", " u'sat.reads_in_cell': 2319,\n", " u'variants.longest_contig_name': u'lambda_NEB3011',\n", " u'variants.mean_contig_length': 48502.0,\n", " u'variants.weighted_mean_bases_called': 1.0,\n", " u'variants.weighted_mean_concordance': 1.0,\n", " u'variants.weighted_mean_coverage': 147.6752298049565}" ] }, "execution_count": 25, "metadata": {}, "output_type": "execute_result" } ], "source": [ "analysis_report_attributes" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Example of Getting Mulitple Jobs and extracting Metrics to build a Table" ] }, { "cell_type": "code", "execution_count": 26, "metadata": { "collapsed": true }, "outputs": [], "source": [ "# Grab some example jobs\n", "job_ids = [12357, 12359, 12360, 12361, 12362, 12367]" ] }, { "cell_type": "code", "execution_count": 27, "metadata": { "collapsed": true }, "outputs": [], "source": [ "def get_attrs_from_job_id(sal_, job_id_):\n", " d = sal_.get_analysis_job_report_attrs(job_id_)\n", " d['job_id'] = job_id_\n", " d['host'] = host\n", " d['port'] = port\n", " return d" ] }, { "cell_type": "code", "execution_count": 28, "metadata": { "collapsed": false }, "outputs": [], "source": [ "datum = [get_attrs_from_job_id(sal, x) for x in job_ids]" ] }, { "cell_type": "code", "execution_count": 29, "metadata": { "collapsed": false }, "outputs": [], "source": [ "# Plot some data\n", "import matplotlib.pyplot as plt\n", "import matplotlib\n", "\n", "import pandas as pd\n", "import seaborn as sns\n", "sns.set_style(\"whitegrid\")\n", "%matplotlib inline" ] }, { "cell_type": "code", "execution_count": 30, "metadata": { "collapsed": true }, "outputs": [], "source": [ "df = pd.DataFrame(datum)" ] }, { "cell_type": "code", "execution_count": 31, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
coverage.depth_coverage_meancoverage.missing_bases_pcthostjob_idmapping_stats.mapped_readlength_maxmapping_stats.mapped_readlength_meanmapping_stats.mapped_readlength_n50mapping_stats.mapped_readlength_q95mapping_stats.mapped_reads_nmapping_stats.mapped_subread_bases_n...mapping_stats.mapped_subread_readlength_meanmapping_stats.mapped_subreadlength_n50mapping_stats.mapped_subreadlength_q95mapping_stats.mapped_subreads_nportvariants.longest_contig_namevariants.mean_contig_lengthvariants.weighted_mean_bases_calledvariants.weighted_mean_concordancevariants.weighted_mean_coverage
040288.3055130.0smrtlink-beta1235735886817816148224802723932074235751...17722075288011707488081lambda_NEB301148502.01.01.00000040288.305513
1364.7056810.0smrtlink-beta123594146148108968165303963701888916069...37326039100105060938081ecoliK12_pbi_March20134642522.01.00.999834364.705681
291904.4893180.0smrtlink-beta123604050511687206603029017762191479775...1673201622001144478081tkb_v1_C5_insertOnly1966.01.01.00000091904.489318
359869.4002930.0smrtlink-beta1236132517747013719203704499313109535638...18722262315016609868081lambda_NEB301148502.01.01.00000059869.400293
4156.5278130.0smrtlink-beta12362420243304592411470248365814056472...2859453688502846958081ecoliK12_pbi_March20134642522.01.00.999937156.527813
5257.7572190.0smrtlink-beta123673714832375708102404135601330448079...2827464384604705548081ecoliK12_pbi_March20134642522.01.00.999829257.757219
\n", "

6 rows × 22 columns

\n", "
" ], "text/plain": [ " coverage.depth_coverage_mean coverage.missing_bases_pct host \\\n", "0 40288.305513 0.0 smrtlink-beta \n", "1 364.705681 0.0 smrtlink-beta \n", "2 91904.489318 0.0 smrtlink-beta \n", "3 59869.400293 0.0 smrtlink-beta \n", "4 156.527813 0.0 smrtlink-beta \n", "5 257.757219 0.0 smrtlink-beta \n", "\n", " job_id mapping_stats.mapped_readlength_max \\\n", "0 12357 35886 \n", "1 12359 41461 \n", "2 12360 40505 \n", "3 12361 32517 \n", "4 12362 42024 \n", "5 12367 37148 \n", "\n", " mapping_stats.mapped_readlength_mean mapping_stats.mapped_readlength_n50 \\\n", "0 8178 16148 \n", "1 4810 8968 \n", "2 11687 20660 \n", "3 7470 13719 \n", "4 3304 5924 \n", "5 3237 5708 \n", "\n", " mapping_stats.mapped_readlength_q95 mapping_stats.mapped_reads_n \\\n", "0 22480 272393 \n", "1 16530 396370 \n", "2 30290 17762 \n", "3 20370 449931 \n", "4 11470 248365 \n", "5 10240 413560 \n", "\n", " mapping_stats.mapped_subread_bases_n ... \\\n", "0 2074235751 ... \n", "1 1888916069 ... \n", "2 191479775 ... \n", "3 3109535638 ... \n", "4 814056472 ... \n", "5 1330448079 ... \n", "\n", " mapping_stats.mapped_subread_readlength_mean \\\n", "0 1772 \n", "1 3732 \n", "2 1673 \n", "3 1872 \n", "4 2859 \n", "5 2827 \n", "\n", " mapping_stats.mapped_subreadlength_n50 \\\n", "0 2075 \n", "1 6039 \n", "2 2016 \n", "3 2262 \n", "4 4536 \n", "5 4643 \n", "\n", " mapping_stats.mapped_subreadlength_q95 mapping_stats.mapped_subreads_n \\\n", "0 2880 1170748 \n", "1 10010 506093 \n", "2 2200 114447 \n", "3 3150 1660986 \n", "4 8850 284695 \n", "5 8460 470554 \n", "\n", " port variants.longest_contig_name variants.mean_contig_length \\\n", "0 8081 lambda_NEB3011 48502.0 \n", "1 8081 ecoliK12_pbi_March2013 4642522.0 \n", "2 8081 tkb_v1_C5_insertOnly 1966.0 \n", "3 8081 lambda_NEB3011 48502.0 \n", "4 8081 ecoliK12_pbi_March2013 4642522.0 \n", "5 8081 ecoliK12_pbi_March2013 4642522.0 \n", "\n", " variants.weighted_mean_bases_called variants.weighted_mean_concordance \\\n", "0 1.0 1.000000 \n", "1 1.0 0.999834 \n", "2 1.0 1.000000 \n", "3 1.0 1.000000 \n", "4 1.0 0.999937 \n", "5 1.0 0.999829 \n", "\n", " variants.weighted_mean_coverage \n", "0 40288.305513 \n", "1 364.705681 \n", "2 91904.489318 \n", "3 59869.400293 \n", "4 156.527813 \n", "5 257.757219 \n", "\n", "[6 rows x 22 columns]" ] }, "execution_count": 31, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df" ] }, { "cell_type": "code", "execution_count": 32, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 32, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "sns.barplot(x=\"job_id\", y=\"mapping_stats.mapped_readlength_mean\", data=df)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 2", "language": "python", "name": "python2" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 2 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython2", "version": "2.7.10" } }, "nbformat": 4, "nbformat_minor": 0 }