Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Save more on your purchases! discount-offer-chevron-icon
Savings automatically calculated. No voucher code required.
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Newsletter Hub
Free Learning
Arrow right icon
timer SALE ENDS IN
0 Days
:
00 Hours
:
00 Minutes
:
00 Seconds
Bioinformatics with Python Cookbook
Bioinformatics with Python Cookbook

Bioinformatics with Python Cookbook: Solve advanced computational biology problems and build production pipelines with Python and AI tools , Fourth Edition

Arrow left icon
Profile Icon Shane Brubaker
Arrow right icon
Early Access Early Access Publishing in Dec 2025
€37.99
Paperback Dec 2025 618 pages 4th Edition
eBook
€8.98 €29.99
Paperback
€37.99
Subscription
Free Trial
Renews at €18.99p/m
Arrow left icon
Profile Icon Shane Brubaker
Arrow right icon
Early Access Early Access Publishing in Dec 2025
€37.99
Paperback Dec 2025 618 pages 4th Edition
eBook
€8.98 €29.99
Paperback
€37.99
Subscription
Free Trial
Renews at €18.99p/m
eBook
€8.98 €29.99
Paperback
€37.99
Subscription
Free Trial
Renews at €18.99p/m

What do you get with Print?

Product feature icon Instant access to your digital copy whilst your Print order is Shipped
Product feature icon Paperback book shipped to your preferred address
Product feature icon Redeem a companion digital copy on all Print orders
Product feature icon Access this title in our online reader with advanced features
Product feature icon DRM FREE - Read whenever, wherever and however you want
Modal Close icon
Payment Processing...
tick Completed

Shipping Address

Billing Address

Shipping Methods
Table of content icon View table of contents Preview book icon Preview Book

Bioinformatics with Python Cookbook

Computer Specifications and Python Setup

We will start by installing the basic software that is required for most of this book. This will include the Python distribution, some fundamental Python libraries, and our Jupyter Notebook environment. We will also set up our GitHub environment and gain access to the repository for the book. As different users have different requirements, we will cover two different approaches for installing the software. One approach is using the Anaconda Python (http://docs.continuum.io/anaconda/) distribution and the other is via Docker (a server virtualization method based on containers sharing the same operating system kernel; please refer to https://www.docker.com/). This will still install Anaconda for you but inside a container.

If you are using a Windows-based operating system, you are strongly encouraged to consider changing your operating system or using Docker via some of the existing options on Windows. On macOS, you should be able to install most of the software natively, though Docker is also available. Learning using a local distribution (Anaconda or something else) is easier than Docker, but given that package management can be complex in Python, Docker images provide a level of stability.

Most modern data scientists use a Mac due to the ease with which you can interact with a native Linux-style operating system. We recommend using a similar computer for this book. In the Technical requirements section, we provide the specifications of the computer and libraries used to develop this book. In most cases, deviations from such a system should work fine with minimal modifications, but if you have trouble, you can try the Docker container. Another alternative could be to use a cloud workstation (some options follow).

In this chapter, we will cover the following recipes:

  • Installing the required software with Anaconda
  • Installing the required software with Docker
  • Introduction to Jupyter Notebook

In this chapter, we will first install some prerequisite software – details of which are given in the Technical requirements section. Each recipe will then take you through the software and the steps that are needed to install it. Each chapter and section might have extra requirements on top of these – we will make those clear as the book progresses. An alternative way to start is to use the Installing the required software with Docker recipe, after which everything will be taken care of for you via a Docker container.

Technical requirements

It is important to note that, starting around 2020, Apple came out with its own chips instead of using Intel chips – these are referred to as Apple silicon chips. This change caused issues with older versions of Python and with some Python libraries. We should not encounter these in this book since we are using newer versions, but it is something to keep in mind if you ever run into issues. This book was developed on an Apple M2 Pro chip, which is an Apple silicon chip.

The code in this book was developed and tested on a computer with the following specifications:

  • MacBook Pro
  • Chip: Apple M2 Pro
  • RAM: 16 GB
  • OS: Sequoia 15.1
  • Python version: 3.12.2

If you do not have a MacBook, there are several options you could explore using cloud workstations. These options will give you a handy alternative where you can set up the appropriate environment.

If you have an AWS account, you can set up a macOS EC2 instance to use as a cloud workstation. They offer an M2 Mac Pro option matching the computer this book was developed on.

Here are some additional sites you can check out if you want to use a Mac workstation on the cloud:

In the next section, we’ll walk through setting up your system and making sure you have Python and some of the basic libraries you need (we’ll install more libraries as we go).

Free Benefits with Your Book

Your purchase includes a free PDF copy of this book along with other exclusive benefits. Check the Free Benefits with Your Book section in the Preface to unlock them instantly and maximize your learning experience.

Installing the required basic software with Anaconda

Next, we will begin setting up your required software libraries, including Python itself. If you are already using a different Python distribution, you are strongly encouraged to consider Anaconda, as it has become the de facto standard for data science and bioinformatics. Also, it is the distribution that will allow you to install software from bioconda (https://bioconda.github.io/).

Getting ready

Python can be run on top of different environments. For instance, you can use Python inside the Java Virtual Machine (JVM) (via Jython or with .NET via IronPython). However, here, we are not only concerned with Python but also with the complete software ecology around it. Therefore, we will use the standard (CPython) implementation, since the JVM and .NET versions exist mostly to interact with the native libraries of these platforms.

For our code, we will be using Python 3.12. If you were starting with Python and bioinformatics, any operating system would work. But here, we are mostly concerned with intermediate to advanced usage, and so we will focus on macOS.

If you are on Windows and do not have easy access to macOS or Linux, don’t worry. Modern virtualization software (such as VirtualBox and Docker) will come to your rescue, which will allow you to install a virtual OS on your operating system. Another option is to use Windows Subsystem for Linux (WSL2), which allows you to run Linux on Windows. For documentation on WSL2, look here:

Another option for you will be to use a cloud workstation (see the Technical requirements section).

Bioinformatics and data science are moving at breakneck speed; this is not just hype, it’s a reality. When installing software libraries, choosing a version might be tricky. Depending on the code that you have, it might not work with some old versions or perhaps not even work with a newer version. Hopefully, any code that you use will indicate the correct dependencies – though this is not guaranteed. In this book, we will fix the precise versions of all software packages, (or provide you with a minimal version, or specify one in the associated chapter YAML file as appropriate. Check your chapter’s README.md file or the Updates section of each notebook for more information.) and we will make sure that the code will work with them. It is quite natural that the code might need tweaking with other package versions.

The software developed for this book is available at https://github.com/PacktPublishing/Bioinformatics-with-Python-Cookbook-fourth-edition. To access it, you will need to install Git. First, make sure HomeBrew is installed (https://brew.sh/):

brew install git

You can go to the GitHub page for the book and get the HTTPS link for downloading the source:

git clone https://github.com/PacktPublishing/Bioinformatics-with-Python-Cookbook-Fourth-Edition.git

This will download the source code to your computer.

Before you install the Python stack, you will need to install all of the external non-Python software that you will be interoperating with. The list will vary from chapter to chapter, and all chapter-specific packages will be explained in their respective chapters. Most of the software is available via bioconda (https://bioconda.github.io/) (also called conda for short) or is pip installable (https://pypi.org/project/pip/).

Where possible in this book, we will allow you to do everything from your Jupyter notebook, even installing the software. To do this, we will use the ! command, which allows you to run a command that you would normally run from your Terminal from the notebook instead – for example:

! ls

This will run the ls or list directory command as if it had been run from the Terminal.

In some cases, for more involved installations, you will need to go into the Terminal, but we’ll advise you on how to do those steps as we go through the relevant recipes.

You will need to install some development compilers and libraries, all of which are free. On Ubuntu, consider installing the build-essential package (apt-get install build-essential), and on macOS, consider Xcode (https://developer.apple.com/xcode/).

We will mention many amazing Python libraries in this book, but here is a brief overview of some of the most important ones:

Name

Application

URL

Purpose

Biopython

All chapters

https://biopython.org/

Bioinformatics library

Biotite

Protein Design

https://www.biotite-python.org/latest/index.html

MultiTool and Protein Structure

Cython

Big data

http://cython.org/

High performance

Dask

Big data

http://dask.pydata.org

Parallel processing

DendroPY

Phylogenetics

https://dendropy.org/

Phylogenetics

HTSeq

NGS/Genomes

https://htseq.readthedocs.io

NGS processing

jupytext

Notebook conversion

https://jupytext.readthedocs.io/en/latest/

Convert your notebook to Python text

Keras

Deep Learning

https://keras.io/

Higher-level library for ML

Matplotlib

Visualization

https://matplotlib.org/

Graphing library

NumPy

All chapters

http://www.numpy.org/

Array/matrix processing

Numba

Big data

https://numba.pydata.org/

High performance

Project Jupyter

All chapters

https://jupyter.org/

Interactive computing

PyMol

Proteomics

https://pymol.org

Molecular visualization

PyVCF

NGS

https://pyvcf.readthedocs.io

VCF processing

Pysam

NGS

https://github.com/pysam-developers/pysam

SAM/BAM processing

SciPy

All chapters

https://www.scipy.org/

Scientific computing

TensorFlow

Machine learning

https://www.tensorflow.org/

Machine learning library

pandas

All chapters

https://pandas.pydata.org/

Data processing

scikit-learn

Machine learning

https://scikit-learn.org

Machine learning library

seaborn

All chapters

https://seaborn.pydata.org/

Statistical chart library

Table 1.1 – Major Python packages that are useful in bioinformatics

We will use pandas to process most table data.

How to do it...

To get started, take a look at the following steps:

  1. Start by downloading the Anaconda distribution from https://www.anaconda.com/products/individual. We will be using version 2024.06, although you will probably be fine with the most recent one. You can accept all the installation’s default settings, but you might want to make sure that the conda binaries are in your path (do not forget to open a new window so that the path can be updated).
  2. As an alternative to downloading from the website, you can use this command:
    curl -O https://repo.anaconda.com/archive/Anaconda3-2024.06-1-MacOSX-x86_64.sh
  3. If you have another Python distribution, be careful with PYTHONPATH and existing Python libraries. It’s probably better to unset PYTHONPATH. As much as possible, uninstall all other Python versions and installed Python libraries. These steps will help reduce future confusion about which installation of Python you are pointing to.
  4. Let’s go ahead with the libraries. We will now create a new conda environment called bioinformatics_base with biopython=1.84, as shown in the following command (type it in your Terminal):
    conda create -n bioinformatics_base python=3.12
  5. Let’s activate the environment, as follows:
    conda activate bioinformatics_base
  6. Let’s add the bioconda and conda-forge channels to our source list:
    conda config --add channels bioconda
    conda config --add channels conda-forge

    Note: Conda channels are remote hosting locations that store common packages we may need.

  7. Also, install the basic packages:
    ! conda install biopython==1.84 jupyterlab==4.3.0 matplotlib==3.9.2 numpy==2.1.0 pandas==2.2.3 scipy==1.14.1

    As an alternative to the above, you can also set up your conda environment using a file that specifies the packages needed. It is provided as bioinformatics_base.yml. It is a YAML file, which stands for "YAML Ain't Markup Language" (https://yaml.org/ To use the file run this command:

    conda env create –f ~/work/CookBook/Ch01/bioinformatics_base.yml

    This will install the required packages for you.

Tip

We often install the latest version of the package by just typing something like conda install biopython, but in this book, we will often do something called “pinning the version.” This means we write an explicit version to help with the reproducibility of the code. We won’t pin the version in every example throughout the book. In most cases, your code should work fine with the latest version. However, we’ll include version pinning where it’s necessary. If any version-specific issues arise in the future, notes will be added to the README.md file for each chapter and in the Updates section of the corresponding notebook.

  1. Now, let’s save our environment so that we can reuse it later to create new environments in other machines or if you need to clean up the base environment:
    conda list –e > bioinformatics_base.txt

Tip

On the left side of your Terminal, you will see what Anaconda environment you are in so you can always tell where you are at. For instance, right now, it should say (bioinformatics_base).

One thing that can be confusing is that using the python -V command in this environment could show an older version. This is because Python 3 is referred to via the python3 command. To fix this, you want to alias the Python command. Typically, it is easiest to put this in your shell file, which is a file that is always run when you open a Terminal window. In Linux, it was .bashrc, but on macOS, you will use the .zshrc file (often pronounced z-shark).

Solution: Open your ~/.zshrc file in a text editor

Add the following line to the end of the file:

alias python=python3

Now save it.

To run it, you can type source ~/.zshrc.

Now, when you run python -V or python --version, you should see that it is 3.12. If you are in a notebook and want to double-check your version, you can run ! python -V in a cell.

There’s more...

If you prefer not to use Anaconda, you will be able to install many of the Python libraries via pip using whatever distribution you choose. You can go through the book and keep installing packages in bioinformatics_base if you want. But you may, at times, find that you want to create an environment specific to a particular chapter to help isolate any complexity in package installations. Let’s look at how to do that real quick:

For example, imagine you want to create an environment for machine learning with scikit-learn. You can do the following:

  1. First, we need to deactivate our current environment:
    conda deactivate
  2. Create a clone of the original environment with the following:
    conda create -n scikit-learn --clone bioinformatics_base
  3. Add scikit-learn:
    conda activate scikit-learn
    conda install scikit-learn

See Also

Installing the required software with Docker

Docker is the most widely used framework for implementing operating system-level virtualization. This technology allows you to have an independent container: a layer that is lighter than a virtual machine but still allows you to compartmentalize software. This mostly isolates all processes, making it feel like each container is a virtual machine. Containers will be discussed in more detail in Chapter 14, Cloud Basics.

Docker works quite well at both extremes of the development spectrum: it’s an expedient way to set up the content of this book for learning purposes and could become your platform of choice for deploying your applications in complex environments.

Conda and Docker are key tools to help maintain software compatibility and reproducibility across different systems and libraries. We’ll discuss reproducibility more in Chapter 15, Workflow Systems.

Note

This recipe is an alternative to the previous recipe. Normally, if you have a Mac and are using it for your Jupyter notebooks, you will not need the Docker container. If you have a Windows machine or cannot get certain code to work in your environment, the Docker container can be useful to provide you with an environment that is set up properly already for you.

Getting ready

The first thing you have to do is install Docker. Go to https://www.docker.com/. Install Docker Desktop for your appropriate operating system (remember to check the Apple versus Intel silicon discussion in the Technical requirements section if you are using macOS). You’ll also need to sign up for a Docker account and record your username and password.

How to do it...

Docker Desktop must be running and you need to be signed in before downloading the Docker file. To get started, follow these steps:

  1. Use the following command from your Terminal:
    docker build -t bio https://github.com/PacktPublishing/Bioinformatics-with-Python-Cookbook-Fourth-Edition.git#main:docker/main

Tip

If you are using the digital version of this book, we advise you to type the code yourself or access the code from the book’s GitHub repository. Doing so will help you avoid any potential errors related to the copying and pasting of code.

You can find the commands for this section in the chapter’s README.md file.

  1. Now you are ready to run the container, as follows:
    docker run -ti -p 9875:9875 -v YOUR_DIRECTORY:/data bio
  2. Replace YOUR_DIRECTORY with a directory on your operating system. This will be shared between your host operating system and the Docker container. YOUR_DIRECTORY will be seen in the container in /data and vice versa.

    In this case, -p 9875:9875 will expose the container’s TCP port 9875 on the host computer port, 9875.

    Especially on Windows (and maybe on macOS), make sure that your directory is actually visible inside the Docker shell environment. If not, check the official Docker documentation on how to expose directories. To access the Docker image while it’s running, hover over the Docker Desktop icon. All the files available in the book’s GitHub repository will be mirrored in the Docker image.

  3. Now you are ready to use the system. Point your browser to http://localhost:9875 and you should get the Jupyter environment.

If this does not work on Windows, check the official Docker documentation (https://docs.docker.com/manuals/) on how to expose ports.

See also

Introduction to Jupyter Notebook

All of our work will be developed inside Jupyter Notebook. Jupyter has become the de facto standard for writing interactive data analysis scripts. Unfortunately, the default format for Jupyter notebooks is based on JSON. JSON is JavaScript Object Notation (https://www.json.org/json-en.html). This format is difficult to read, difficult to compare, and needs exporting to be fed into a normal Python interpreter. To obviate that problem, we will extend Jupyter with jupytext (https://jupytext.readthedocs.io/), which allows us to save Jupyter notebooks as normal Python programs. We will start with an overview of Jupyter Notebook, and then look into jupytext. Recall that we installed Jupyter Notebook in the first recipe of this chapter, when we installed the jupyterlab package using conda.

How to do it…

  1. To run Jupyter, on the Terminal, type the following:
    jupyter notebook

    This will open the Jupyter browser, and you will see a home page that looks something like this:

Figure 1.1 – The Jupyter browser home page

This home page gives you an overview of your files, so you can open, rename, and download them, and so on.

  1. Let’s click on one of the files and open it. We will see something like this:

Figure 1.2 – An example of a notebook

Here, we see a menu that allows us to save or download files and perform other actions. Each cell can be executed by clicking the play button. You can also run multiple cells. When you run a cell, you will see its output below.

In some cases, you may need to restart your kernel – use the Kernel | Restart Kernel... method.

Jupyter notebook resources

This would be a good time to pause and take some time to learn more about Jupyter notebooks. There are numerous keyboard shortcuts that are worth learning to speed up your development:

Tutorial: https://www.datacamp.com/tutorial/tutorial-jupyter-notebook

Keyboard Shortcuts: https://towardsdatascience.com/jypyter-notebook-shortcuts-bf0101a98330

Now that we have set up our Jupyter Notebook environment, let’s take a look at a handy tool called Jupytext.

Jupytext

Sometimes, you will want to convert your notebooks into formats other than ipynb – for example, you might want to get them into .py format. For this, we can use jupytext - https://github.com/mwouts/jupytext. This handy plugin will allow us to save Jupyter notebooks in formats other than .ipynb. Remember to get out of the Jupyter browser first. To do this on a Mac, you would close the Jupyter browser window, then go to the Terminal where you started it. Then, click Ctrl + Z to kill the process.

To install jupytext, we will run the following:

pip install jupytext

Now let’s start up the Jupyter browser again:

jupyter notebook

Now we’ve launched the Jupyter browser again, open the Welcome notebook. Go to the File | Jupytext menu. Here is what it looks like:

Figure 1.3 – The Jupytext menu within the Jupyter browser

To save your notebook in another format, you pair it and choose a format. For instance, if you choose to pair it with the light format, you will get a regular Python (.py) formatted file in your current working directory.

Here is what our Welcome.py file looks like in our working directory when paired with the light format:

Figure 1.4 – The Welcome.py notebook in the Light format produced by Jupytext

There are several other popular formats supported by Jupytext. You can read more about them here: https://jupytext.readthedocs.io/en/latest/index.html.

Warning

Remember that the recipes in this book are normally meant to be run inside Jupyter notebooks. This means, typically, we will not always use print to output content. In a notebook, if you simply put the name of a variable and run it, it will print out the result for you. If you are not using notebooks (e.g. you are writing Python scripts and executing them from the terminal), you may want to add print statements to your code. Even within a notebook, you may find it useful at times to add your own print statements to inspect variables and debug code.

In addition to the Jupyter browser, there is a more integrated environment called JupyterLab: https://jupyterlab.readthedocs.io/en/latest/. It allows you to run Terminals and other widgets inside the same environment as your notebook. To get to it, you can click View | Open JupyterLab. You can check it out if you are interested, but it is not necessary to get through the book.

A welcome notebook called Welcome.ipynb has been placed in the GitHub repository for this book in the Ch01 folder. You can use it to test out your notebook environment. This notebook also contains many handy links to help you learn Python and explore bioinformatics!

To recap everything, here are your main options for performing the recipes in this book:

System

Components

Pros

Cons

MacBook Pro Laptop

Anaconda; pip; brew; Jupyter

Best system for compatibility and ease of use

You may not own one

Mac Cloud Workstation or Mac AWS EC2 Instance

Anaconda; pip; brew; Jupyter

Convenient solution; identical to Mac laptop

May incur some costs

Windows Machine + Docker

Docker

Portable solution

Some increased overhead

Windows + VirtualBox or WSL2

Anaconda; pip; brew; Jupyter

Let’s you interact with a Linux OS

Some installation or compatibility issues may arise

Linux Machine

Anaconda; pip; brew; Jupyter

Let’s you interact with a Linux OS

Some installation or compatibility issues may arise

Table 1.2 – System and OS options for use with this book

See also

Left arrow icon Right arrow icon
Download code icon Download Code

Key benefits

  • Perform sequence analysis at primary, secondary, and tertiary levels using Python libraries
  • Solve real-world problems in the fields of phylogenetics, protein design, and annotation
  • Use language models and other AI techniques to work with multimodal bioinformatics data
  • Purchase of the print or Kindle book includes a free PDF eBook

Description

If you've ever felt overwhelmed by the vast number of Python tools available for bioinformatics, you're not alone. The Bioinformatics with Python Cookbook is a recipe-based guide that explores practical approaches for solving classic bioinformatics challenges, showing you which Python packages work best for each task. You’ll start with the essential Python libraries for data science and bioinformatics, then move through key workflows in sequencing analysis, quality control, alignment, and variant calling. Along the way, you’ll pick up modern coding practices, explore recent advances in bioinformatics research, and gain hands-on experience with libraries such as NumPy, pandas, and sci-kit learn. This book walks you through core bioinformatics tasks such as phylogenetic analysis and population genomics while familiarizing you with the wealth of modern public bioinformatics databases. You’ll learn cloud computing approaches used by researchers, set up workflow orchestration systems for controlling bioinformatics pipelines, and see how AI and the use of large language models (LLMs) are reshaping the field–right down to designing proteins and DNA. By the end of this book, you’ll be ready to apply Python for real bioinformatics work and launch bioinformatics pipelines for your research.

Who is this book for?

This book is for early- to mid-level practitioners in bioinformatics, data science, and software engineering who want to improve their skills and apply practical solutions to real-world problems. You should have a basic understanding of biology, including DNA, proteins, and cell structure, as well as Python programming and software engineering techniques. While prior exposure to machine learning with Python is not essential, experience with a cloud computing platform (AWS, GCP, or Azure) will be helpful.

What you will learn

  • Process, analyze, and align sequencing data
  • Call variants and interpret their biological meaning
  • Use modern cloud infrastructure to launch bioinformatics workflows
  • Ingest, clean, and transform data efficiently
  • Explore how AI is shaping the future of bioinformatics
  • Leverage imaging data for biological insights
  • Apply single-cell sequencing to cluster and compare gene expression
Estimated delivery fee Deliver to Malta

Premium delivery 7 - 10 business days

€32.95
(Includes tracking information)

Product Details

Country selected
Publication date, Length, Edition, Language, ISBN-13
Publication date : Dec 19, 2025
Length: 618 pages
Edition : 4th
Language : English
ISBN-13 : 9781836642756
Vendor :
Anaconda
Category :
Languages :
Concepts :
Tools :

What do you get with Print?

Product feature icon Instant access to your digital copy whilst your Print order is Shipped
Product feature icon Paperback book shipped to your preferred address
Product feature icon Redeem a companion digital copy on all Print orders
Product feature icon Access this title in our online reader with advanced features
Product feature icon DRM FREE - Read whenever, wherever and however you want
Modal Close icon
Payment Processing...
tick Completed

Shipping Address

Billing Address

Shipping Methods
Estimated delivery fee Deliver to Malta

Premium delivery 7 - 10 business days

€32.95
(Includes tracking information)

Product Details

Publication date : Dec 19, 2025
Length: 618 pages
Edition : 4th
Language : English
ISBN-13 : 9781836642756
Vendor :
Anaconda
Category :
Languages :
Concepts :
Tools :

Packt Subscriptions

See our plans and pricing
Modal Close icon
€18.99 billed monthly
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Simple pricing, no contract
€189.99 billed annually
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just €5 each
Feature tick icon Exclusive print discounts
€264.99 billed in 18 months
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just €5 each
Feature tick icon Exclusive print discounts

Table of Contents

21 Chapters
Chapter 1: Computer Specifications and Python Setup Chevron down icon Chevron up icon
Chapter 2: Basics of Data Manipulation Chevron down icon Chevron up icon
Chapter 3: Modern Coding Practices and AI-Generated Coding Chevron down icon Chevron up icon
Chapter 4: Data Science and Graphing Chevron down icon Chevron up icon
Chapter 5: Alignment and Variant Calling Chevron down icon Chevron up icon
Chapter 6: Annotation and Biological Interpretation Chevron down icon Chevron up icon
Chapter 7: Genomes and Genome Assembly Chevron down icon Chevron up icon
Chapter 8: Accessing Public Databases Chevron down icon Chevron up icon
Chapter 9: Protein Structure and Proteomics Chevron down icon Chevron up icon
Chapter 10: Phylogenetics Chevron down icon Chevron up icon
Chapter 11: Population Genetics Chevron down icon Chevron up icon
Chapter 12: Metabolic Modeling and Other Applications Chevron down icon Chevron up icon
Chapter 13: Genome Editing Chevron down icon Chevron up icon
Chapter 14: Cloud Basics Chevron down icon Chevron up icon
Chapter 15: Workflow Systems Chevron down icon Chevron up icon
Chapter 16: More Workflow Systems Chevron down icon Chevron up icon
Chapter 17: Deep Learning and LLMs for Nucleic Acid and Protein Design Chevron down icon Chevron up icon
Chapter 18: Single-Cell Technology and Imaging Chevron down icon Chevron up icon
Chapter 19: Unlock Your Exclusive Benefits Chevron down icon Chevron up icon
Index Chevron down icon Chevron up icon
Other Books You May Enjoy Chevron down icon Chevron up icon
Get free access to Packt library with over 7500+ books and video courses for 7 days!
Start Free Trial

FAQs

What is the digital copy I get with my Print order? Chevron down icon Chevron up icon

When you buy any Print edition of our Books, you can redeem (for free) the eBook edition of the Print Book you’ve purchased. This gives you instant access to your book when you make an order via PDF, EPUB or our online Reader experience.

What is the delivery time and cost of print book? Chevron down icon Chevron up icon

Shipping Details

USA:

'

Economy: Delivery to most addresses in the US within 10-15 business days

Premium: Trackable Delivery to most addresses in the US within 3-8 business days

UK:

Economy: Delivery to most addresses in the U.K. within 7-9 business days.
Shipments are not trackable

Premium: Trackable delivery to most addresses in the U.K. within 3-4 business days!
Add one extra business day for deliveries to Northern Ireland and Scottish Highlands and islands

EU:

Premium: Trackable delivery to most EU destinations within 4-9 business days.

Australia:

Economy: Can deliver to P. O. Boxes and private residences.
Trackable service with delivery to addresses in Australia only.
Delivery time ranges from 7-9 business days for VIC and 8-10 business days for Interstate metro
Delivery time is up to 15 business days for remote areas of WA, NT & QLD.

Premium: Delivery to addresses in Australia only
Trackable delivery to most P. O. Boxes and private residences in Australia within 4-5 days based on the distance to a destination following dispatch.

India:

Premium: Delivery to most Indian addresses within 5-6 business days

Rest of the World:

Premium: Countries in the American continent: Trackable delivery to most countries within 4-7 business days

Asia:

Premium: Delivery to most Asian addresses within 5-9 business days

Disclaimer:
All orders received before 5 PM U.K time would start printing from the next business day. So the estimated delivery times start from the next day as well. Orders received after 5 PM U.K time (in our internal systems) on a business day or anytime on the weekend will begin printing the second to next business day. For example, an order placed at 11 AM today will begin printing tomorrow, whereas an order placed at 9 PM tonight will begin printing the day after tomorrow.


Unfortunately, due to several restrictions, we are unable to ship to the following countries:

  1. Afghanistan
  2. American Samoa
  3. Belarus
  4. Brunei Darussalam
  5. Central African Republic
  6. The Democratic Republic of Congo
  7. Eritrea
  8. Guinea-bissau
  9. Iran
  10. Lebanon
  11. Libiya Arab Jamahriya
  12. Somalia
  13. Sudan
  14. Russian Federation
  15. Syrian Arab Republic
  16. Ukraine
  17. Venezuela
What is custom duty/charge? Chevron down icon Chevron up icon

Customs duty are charges levied on goods when they cross international borders. It is a tax that is imposed on imported goods. These duties are charged by special authorities and bodies created by local governments and are meant to protect local industries, economies, and businesses.

Do I have to pay customs charges for the print book order? Chevron down icon Chevron up icon

The orders shipped to the countries that are listed under EU27 will not bear custom charges. They are paid by Packt as part of the order.

List of EU27 countries: www.gov.uk/eu-eea:

A custom duty or localized taxes may be applicable on the shipment and would be charged by the recipient country outside of the EU27 which should be paid by the customer and these duties are not included in the shipping charges been charged on the order.

How do I know my custom duty charges? Chevron down icon Chevron up icon

The amount of duty payable varies greatly depending on the imported goods, the country of origin and several other factors like the total invoice amount or dimensions like weight, and other such criteria applicable in your country.

For example:

  • If you live in Mexico, and the declared value of your ordered items is over $ 50, for you to receive a package, you will have to pay additional import tax of 19% which will be $ 9.50 to the courier service.
  • Whereas if you live in Turkey, and the declared value of your ordered items is over € 22, for you to receive a package, you will have to pay additional import tax of 18% which will be € 3.96 to the courier service.
How can I cancel my order? Chevron down icon Chevron up icon

Cancellation Policy for Published Printed Books:

You can cancel any order within 1 hour of placing the order. Simply contact [email protected] with your order details or payment transaction id. If your order has already started the shipment process, we will do our best to stop it. However, if it is already on the way to you then when you receive it, you can contact us at [email protected] using the returns and refund process.

Please understand that Packt Publishing cannot provide refunds or cancel any order except for the cases described in our Return Policy (i.e. Packt Publishing agrees to replace your printed book because it arrives damaged or material defect in book), Packt Publishing will not accept returns.

What is your returns and refunds policy? Chevron down icon Chevron up icon

Return Policy:

We want you to be happy with your purchase from Packtpub.com. We will not hassle you with returning print books to us. If the print book you receive from us is incorrect, damaged, doesn't work or is unacceptably late, please contact Customer Relations Team on [email protected] with the order number and issue details as explained below:

  1. If you ordered (eBook, Video or Print Book) incorrectly or accidentally, please contact Customer Relations Team on [email protected] within one hour of placing the order and we will replace/refund you the item cost.
  2. Sadly, if your eBook or Video file is faulty or a fault occurs during the eBook or Video being made available to you, i.e. during download then you should contact Customer Relations Team within 14 days of purchase on [email protected] who will be able to resolve this issue for you.
  3. You will have a choice of replacement or refund of the problem items.(damaged, defective or incorrect)
  4. Once Customer Care Team confirms that you will be refunded, you should receive the refund within 10 to 12 working days.
  5. If you are only requesting a refund of one book from a multiple order, then we will refund you the appropriate single item.
  6. Where the items were shipped under a free shipping offer, there will be no shipping costs to refund.

On the off chance your printed book arrives damaged, with book material defect, contact our Customer Relation Team on [email protected] within 14 days of receipt of the book with appropriate evidence of damage and we will work with you to secure a replacement copy, if necessary. Please note that each printed book you order from us is individually made by Packt's professional book-printing partner which is on a print-on-demand basis.

What tax is charged? Chevron down icon Chevron up icon

Currently, no tax is charged on the purchase of any print book (subject to change based on the laws and regulations). A localized VAT fee is charged only to our European and UK customers on eBooks, Video and subscriptions that they buy. GST is charged to Indian customers for eBooks and video purchases.

What payment methods can I use? Chevron down icon Chevron up icon

You can pay with the following card types:

  1. Visa Debit
  2. Visa Credit
  3. MasterCard
  4. PayPal
What is the delivery time and cost of print books? Chevron down icon Chevron up icon

Shipping Details

USA:

'

Economy: Delivery to most addresses in the US within 10-15 business days

Premium: Trackable Delivery to most addresses in the US within 3-8 business days

UK:

Economy: Delivery to most addresses in the U.K. within 7-9 business days.
Shipments are not trackable

Premium: Trackable delivery to most addresses in the U.K. within 3-4 business days!
Add one extra business day for deliveries to Northern Ireland and Scottish Highlands and islands

EU:

Premium: Trackable delivery to most EU destinations within 4-9 business days.

Australia:

Economy: Can deliver to P. O. Boxes and private residences.
Trackable service with delivery to addresses in Australia only.
Delivery time ranges from 7-9 business days for VIC and 8-10 business days for Interstate metro
Delivery time is up to 15 business days for remote areas of WA, NT & QLD.

Premium: Delivery to addresses in Australia only
Trackable delivery to most P. O. Boxes and private residences in Australia within 4-5 days based on the distance to a destination following dispatch.

India:

Premium: Delivery to most Indian addresses within 5-6 business days

Rest of the World:

Premium: Countries in the American continent: Trackable delivery to most countries within 4-7 business days

Asia:

Premium: Delivery to most Asian addresses within 5-9 business days

Disclaimer:
All orders received before 5 PM U.K time would start printing from the next business day. So the estimated delivery times start from the next day as well. Orders received after 5 PM U.K time (in our internal systems) on a business day or anytime on the weekend will begin printing the second to next business day. For example, an order placed at 11 AM today will begin printing tomorrow, whereas an order placed at 9 PM tonight will begin printing the day after tomorrow.


Unfortunately, due to several restrictions, we are unable to ship to the following countries:

  1. Afghanistan
  2. American Samoa
  3. Belarus
  4. Brunei Darussalam
  5. Central African Republic
  6. The Democratic Republic of Congo
  7. Eritrea
  8. Guinea-bissau
  9. Iran
  10. Lebanon
  11. Libiya Arab Jamahriya
  12. Somalia
  13. Sudan
  14. Russian Federation
  15. Syrian Arab Republic
  16. Ukraine
  17. Venezuela
Modal Close icon
Modal Close icon