{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Python for Bioinformatics" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "These are the notebooks for the [_Python with Bioinformatics Cookbook_](https://www.packtpub.com/application-development/bioinformatics-python-cookbook).\n", "\n", "![Book cover](https://d255esdrn735hr.cloudfront.net/sites/default/files/imagecache/ppv4_main_book_cover/5117OS_Bioinformatics%20with%20Python%20Cookbook_low.jpg)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Datasets" ] }, { "cell_type": "markdown", "metadata": { "collapsed": true }, "source": [ "[Click here for the datasets used in the book](Datasets.ipynb). You only need this if you do _not_ use the notebooks (as the notebooks will take care of the data)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Python 2 or 3?" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Depending on your Python version, some content might not be available. Lets test that:" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Python 3: The Phylogenomics module will not work, but all the Big Data content will\n" ] } ], "source": [ "import platform\n", "major, minor, patch = platform.python_version_tuple()\n", "if major == '3':\n", " print('Python 3: The Phylogenomics module will not work, but all the Big Data content will')\n", "else:\n", " print('Python 2: The Phylogenomics module will work, but some Big Data content will not')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "####The new version of DendroPy supports Python 3. You are thus encouraged to consider Python 3" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "

If you are seeing this on github,for some reason opening notebooks in new tabs does not work. Please open notebooks in the same tab here.

\n", "
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Python and the surrounding software ecology" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![example](00_Intro/example.png)\n", "\n", "* [Interfacing with R](00_Intro/Interfacing_R.ipynb)\n", "* [R Magic](00_Intro/R_magic.ipynb)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Next Generation Sequencing" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![example](01_NGS/example.png)\n", "\n", "* [Accessing Databases](01_NGS/Accessing_Databases.ipynb)\n", "* [Basic Sequence Processing](01_NGS/Basic_Sequence_Processing.ipynb)\n", "* [Working with FASTQ files](01_NGS/Working_with_FASTQ.ipynb)\n", "* [Working with BAM files](01_NGS/Working_with_BAM.ipynb)\n", "* [Working with VCF files](01_NGS/Working_with_VCF.ipynb)\n", "* [Filtering SNPs](01_NGS/Filtering_SNPs.ipynb)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Genomics" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![example](02_Genomes/example.png)\n", "\n", "* [Working with high-quality reference genomes](02_Genomes/Reference_Genome.ipynb)\n", "* [Dealing with low-quality Reference Genomes](02_Genomes/Low_Quality.ipynb)\n", "* [Traversing Genome Annotations](02_Genomes/Annotations.ipynb)\n", "* [Extracting Genes from a reference using annotations](02_Genomes/Getting_Gene.ipynb)\n", "* [Finding orthologues with the Ensembl REST API](02_Genomes/Orthology.ipynb)\n", "* [Retrieving Gene Ontology information from Ensembl](02_Genomes/Gene_Ontology.ipynb)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Population Genetics" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![example](03_PopGen/example.png)\n", "\n", "* [Data Formats with PLINK](03_PopGen/Data_Formats.ipynb)\n", "* [The Genepop Format](03_PopGen/Genepop_Format.ipynb)\n", "* [Exploratory Analysis](03_PopGen/Exploratory_Analysis.ipynb)\n", "* [F statistics](03_PopGen/F-stats.ipynb)\n", "* [Principal Components Analysis (PCA)](03_PopGen/PCA.ipynb)\n", "* [Admixture/Structure](03_PopGen/Admixture.ipynb)\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Simulation in Population Genetics" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![example](04_PopSim/example.png)\n", "\n", "* [Introducing Forward-time simulations](04_PopSim/Basic_SimuPOP.ipynb)\n", "* [Simulating selection](04_PopSim/Selection.ipynb)\n", "* [Doing population structure with island and stepping-stone models](04_PopSim/Pop_Structure.ipynb)\n", "* [Modeling complex demographic scenarios](04_PopSim/Complex.ipynb)\n", "* [Simulating the coalescent with Biopython and fastsimcoal](04_PopSim/Coalescent.ipynb)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Phylogenetics" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![example](05_Phylo/example.png)\n", "\n", "* [Preparing the Ebola dataset](05_Phylo/Exploration.ipynb)\n", "* [Aligning genetic and genomic data](05_Phylo/Alignment.ipynb)\n", "* [Comparing sequences](05_Phylo/Comparison.ipynb)\n", "* [Playing recursively with trees](05_Phylo/Trees.ipynb)\n", "* [Reconstructing Phylogenetic trees](05_Phylo/Reconstruction.ipynb)\n", "* [Visualizing Phylogenetic data](05_Phylo/Visualization.ipynb)\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Proteomics" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![example](06_Prot/example.png)\n", "\n", "* [Finding a protein in multiple databases](06_Prot/Intro.ipynb)\n", "* [Introducing Bio.PDB](06_Prot/PDB.ipynb)\n", "* [Extracting more information from a PDB file](06_Prot/Stats.ipynb)\n", "* [Computing distances on a PDB file](06_Prot/Distance.ipynb)\n", "* [Doing geometric operations](06_Prot/Mass.ipynb)\n", "* [Implementing a basic PDB parser](06_Prot/Parser.ipynb)\n", "* [Parsing mmCIF files with Biopython](06_Prot/mmCIF.ipynb)\n", "\n", "The code for the PyMol recipe can be found on the pymol directory of the [github project](https://github.com/tiagoantao/bioinf-python)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Other topics" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![example](07_Other/example.png)\n", "\n", "* [Accessing the Global Biodiversity Information Facility (GBIF) via REST](07_Other/GBIF.ipynb)\n", "* [Geo-referencing GBIF datasets](07_Other/GBIF_extra.ipynb)\n", "* [Accessing molecular-interaction databases with PSIQUIC](07_Other/PSICQUIC.ipynb)\n", "* [Plotting protein interactions with Cytoscape the hard way](07_Other/Cytoscape.ipynb)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Advanced Python for Bioinformatics" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "* [Setting the stage for high performance computing](08_Advanced/Intro.ipynb)\n", "* [Designing a poor-human concurrent executor](08_Advanced/Multiprocessing.ipynb)\n", "* [Doing parallel computing with IPython](08_Advanced/IPythonParallel.ipynb)\n", "* [Approximating the median in a large dataset](08_Advanced/Median.ipynb)\n", "* [Optimizing code with Cython and Numba](08_Advanced/Cython_Numba.ipynb)\n", "* [Programming with lazyness](08_Advanced/Lazy.ipynb)\n", "* [Thinking with generators](08_Advanced/Generators.ipynb)\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python [default]", "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.5.3" } }, "nbformat": 4, "nbformat_minor": 1 }