{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "ename": "ModuleNotFoundError",
     "evalue": "No module named 'rerpresentative_v4'",
     "output_type": "error",
     "traceback": [
      "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
      "\u001b[0;31mModuleNotFoundError\u001b[0m                       Traceback (most recent call last)",
      "\u001b[1;32m/home/laura/code/transcript-sampler/scripts/new_exe_file.ipynb Cell 1\u001b[0m in \u001b[0;36m<cell line: 7>\u001b[0;34m()\u001b[0m\n\u001b[1;32m      <a href='vscode-notebook-cell:/home/laura/code/transcript-sampler/scripts/new_exe_file.ipynb#W1sZmlsZQ%3D%3D?line=4'>5</a>\u001b[0m \u001b[39mimport\u001b[39;00m \u001b[39mpoisson_sampling\u001b[39;00m \u001b[39mas\u001b[39;00m \u001b[39mps\u001b[39;00m\n\u001b[1;32m      <a href='vscode-notebook-cell:/home/laura/code/transcript-sampler/scripts/new_exe_file.ipynb#W1sZmlsZQ%3D%3D?line=5'>6</a>\u001b[0m \u001b[39mimport\u001b[39;00m \u001b[39mwritegtf\u001b[39;00m \u001b[39mas\u001b[39;00m \u001b[39mgt\u001b[39;00m\n\u001b[0;32m----> <a href='vscode-notebook-cell:/home/laura/code/transcript-sampler/scripts/new_exe_file.ipynb#W1sZmlsZQ%3D%3D?line=6'>7</a>\u001b[0m \u001b[39mimport\u001b[39;00m \u001b[39mmatch_reprtranscript_expressionlevel\u001b[39;00m \u001b[39mas\u001b[39;00m \u001b[39mma\u001b[39;00m\n\u001b[1;32m     <a href='vscode-notebook-cell:/home/laura/code/transcript-sampler/scripts/new_exe_file.ipynb#W1sZmlsZQ%3D%3D?line=9'>10</a>\u001b[0m \u001b[39mdef\u001b[39;00m \u001b[39mexe\u001b[39m(input_file, csv, gtf, transcript_nr):\n\u001b[1;32m     <a href='vscode-notebook-cell:/home/laura/code/transcript-sampler/scripts/new_exe_file.ipynb#W1sZmlsZQ%3D%3D?line=10'>11</a>\u001b[0m     file_name,source_pathway_name_2,deposit_pathway_name_2 \u001b[39m=\u001b[39m te\u001b[39m.\u001b[39mextract_transcript(input_file, deposit_pathway_name \u001b[39m=\u001b[39m \u001b[39mTrue\u001b[39;00m, Input_free \u001b[39m=\u001b[39m Input_free)\n",
      "File \u001b[0;32m~/code/transcript-sampler/scripts/match_reprtranscript_expressionlevel.py:5\u001b[0m, in \u001b[0;36m<module>\u001b[0;34m\u001b[0m\n\u001b[1;32m      3\u001b[0m \u001b[39mimport\u001b[39;00m \u001b[39mjson\u001b[39;00m\n\u001b[1;32m      4\u001b[0m \u001b[39mimport\u001b[39;00m \u001b[39mre\u001b[39;00m\n\u001b[0;32m----> 5\u001b[0m \u001b[39mimport\u001b[39;00m \u001b[39mrerpresentative_v4\u001b[39;00m \u001b[39mas\u001b[39;00m \u001b[39mrepr\u001b[39;00m\n\u001b[1;32m      6\u001b[0m \u001b[39mimport\u001b[39;00m \u001b[39mos\u001b[39;00m\n\u001b[1;32m      9\u001b[0m \u001b[39mdef\u001b[39;00m \u001b[39mdict_reprTrans_to_df\u001b[39m(dict_reprTrans: \u001b[39mdict\u001b[39m):\n",
      "\u001b[0;31mModuleNotFoundError\u001b[0m: No module named 'rerpresentative_v4'"
     ]
    }
   ],
   "source": [
    "import argparse\n",
    "import transcript_extractor as te\n",
    "import exon_length_filter as elf\n",
    "import representative as rtcl\n",
    "import poisson_sampling as ps\n",
    "import writegtf as gt\n",
    "import match_reprtranscript_expressionlevel as ma\n",
    "\n",
    "\n",
    "def exe(input_file, csv, gtf, transcript_nr):\n",
    "    file_name,source_pathway_name_2,deposit_pathway_name_2 = te.extract_transcript(input_file, deposit_pathway_name = True, Input_free = Input_free)\n",
    "    inter_mediate_file_directory = input_file +\"_intermediate_file.txt\"\n",
    "\n",
    "    print(\"Transcripts are filtered based on transcript score. Please wait...\")\n",
    "\n",
    "    pre_filter_representative_transcripts_dict = rtcl.find_repr_by_SupportLevel(inter_mediate_file_directory)\n",
    "\n",
    "    print(\"Transcripts filtered\\n\")\n",
    "    elf.exon_length_filter(file_name,gen_dict= pre_filter_representative_transcripts_dict, Input_free = True)\n",
    "\n",
    "    tsv_input = ma.output_tsv()\n",
    "    print(\"Poisson sampling of transcripts\")\n",
    "    ps.transcript_sampling(transcript_nr, tsv_input, csv)\n",
    "    print(\"output csv file ready\")\n",
    "    \n",
    "    print(\"writing output gtf file\")\n",
    "    gt.gtf_file_writer(input_file, csv, gtf)\n",
    "\n",
    "\n",
    "\n",
    "if __name__ == '__main__':\n",
    "    parser = argparse.ArgumentParser(\n",
    "        description=\"transcript sampler\",\n",
    "        formatter_class=argparse.ArgumentDefaultsHelpFormatter\n",
    "    )\n",
    "    parser.add_argument(\"--annotation\", required=True, help=\"gtf file with genome annotation\")\n",
    "    parser.add_argument(\"--output_csv\", required=True, help=\"output csv file\")\n",
    "    parser.add_argument(\"--output_gtf\", required=True, help=\"output gtf file\")\n",
    "    parser.add_argument(\"--transcript_number\", required=True, help=\"total number of transcripts to sample\")\n",
    "    args = parser.parse_args()\n",
    "    exe(args.annotation, args.output_csv, args.output_gtf, args.transcript_nr)\n",
    "\n",
    "    #return(file_name,source_pathway_name,deposit_pathway_name)\n",
    "\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3.9.12 ('nextstrain')",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.9.12"
  },
  "orig_nbformat": 4,
  "vscode": {
   "interpreter": {
    "hash": "41a54f34eee8c9e478b3404dd74579d3248e5c82a4969468d7042e338229b1fe"
   }
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}