#!/usr/bin/env python # coding: utf-8 # # Python for Bioinformatics # These are the notebooks for the [_Python with Bioinformatics Cookbook_](https://www.packtpub.com/application-development/bioinformatics-python-cookbook). # # ![Book cover](https://d255esdrn735hr.cloudfront.net/sites/default/files/imagecache/ppv4_main_book_cover/5117OS_Bioinformatics%20with%20Python%20Cookbook_low.jpg) # ## Datasets # [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) # ## Python 2 or 3? # Depending on your Python version, some content might not be available. Lets test that: # In[1]: import platform major, minor, patch = platform.python_version_tuple() if major == '3': print('Python 3: The Phylogenomics module will not work, but all the Big Data content will') else: print('Python 2: The Phylogenomics module will work, but some Big Data content will not') # ####The new version of DendroPy supports Python 3. You are thus encouraged to consider Python 3 #
#

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.

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