Python Programming for Biology: Bioinformatics and Beyond



Download 7,75 Mb.
Pdf ko'rish
bet3/514
Sana30.12.2021
Hajmi7,75 Mb.
#91066
1   2   3   4   5   6   7   8   9   ...   514
Bog'liq
[Tim J. Stevens, Wayne Boucher] Python Programming

Contents

Preface

Acknowledgements

1  Prologue

Python programming for biology

2  A beginners’ guide

Programming principles

Basic data types

Program flow

3  Python basics

Introducing the fundamentals

Simple data types

Collection data types

Importing modules

4  Program control and logic

Controlling command execution

Conditional execution

Loops


Error exceptions

Further considerations

5  Functions

Function basics

Input arguments

Variable scope

Further considerations

6  Files


Computer files

Reading files

File reading examples



Writing files

Further considerations

7  Object orientation

Creating classes

Further details

8  Object data modelling

Data models

Implementing a data model

Refined implementation

9  Mathematics

Using Python for mathematics

Linear algebra

NumPy package

Linear algebra examples

10  Coding tips

Improving Python code

A compendium of tips

11  Biological sequences

Bio-molecules for non-biologists

Using biological sequences in computing

Simple sub-sequence properties

Obtaining sequences with BioPython

12  Pairwise sequence alignments

Sequence alignment

Calculating an alignment score

Optimising pairwise alignment

Quick database searches

13  Multiple-sequence alignments

Multiple alignments

Alignment consensus and profiles

Generating simple multiple alignments in Python

Interfacing multiple-alignment programs




14  Sequence variation and evolution

A basic introduction to sequence variation

Similarity measures

Phylogenetic trees

15  Macromolecular structures

An introduction to 3D structures of bio-molecules

Using Python for macromolecular structures

Coordinate superimposition

External macromolecular structure modules

16  Array data

Multiplexed experiments

Reading array data

The ‘

Microarray



’ class

Array analysis

17  High-throughput sequence analyses

High-throughput sequencing

Mapping sequences to a genome

Using the HTSeq library

18  Images

Biological images

Basic image operations

Adjustments and filters

Feature detection

19  Signal processing

Signals

Fast Fourier transform

Peaks

20  Databases



A brief introduction to relational databases

Basic SQL

Designing a molecular structure database

21  Probability




The basics of probability theory

Restriction enzyme example

Random variables

Markov chains

22  Statistics

Statistical analyses

Simple statistical parameters

Statistical tests

Correlation and covariance

23  Clustering and discrimination

Separating and grouping data

Clustering methods

Data discrimination

24  Machine learning

A guide to machine learning

k-nearest neighbours

Self-organising maps

Feed-forward artificial neural networks

Support vector machines

25  Hard problems

Solving hard problems

The Monte Carlo method

Simulated annealing

26  Graphical interfaces

An introduction to graphical user interfaces

Python GUI examples

27  Improving speed

Running things faster

Parallelisation

Writing faster modules

Appendices

Appendix 1  Simplified language reference



Appendix 2  Selected standard type methods and operations

Appendix 3  Standard module highlights

Appendix 4  String formatting

Appendix 5  Regular expressions

Appendix 6  Further statistics

Glossary

Index


Preface

Many years ago we started programming in Python because we were working on a large

computational biology project. In those days choosing Python was not nearly as common

as  it  is  today.  Nonetheless  things  worked  out  well,  and  as  our  expertise  grew  it  seemed

only natural that we should run some elementary Python courses for the School of Biology

at the University of Cambridge, where we were employed. The basis for those courses is

what turned into the initial idea for this book. While there were many books about getting

started with Python and some that were tailored to bioinformatics, we felt that there was

still some room for what we wanted to put across. We began with the idea that we could

write  some  chapters  in  relatively  straightforward  English  that  were  aimed  at  biologists,

who might be complete novices at programming, and have other sections that are useful to

a  more  experienced  programmer.  Also,  given  that  we  didn’t  consider  ourselves  to  be

typical  bioinformaticians,  we  were  thinking  more  broadly  than  just  sequence-based

informatics,  though  naturally  such  things  would  be  included.  We  felt  that  although  we

couldn’t anticipate all the requirements of a biological programmer there were nonetheless

a number of key concepts and techniques which we could try to explain. The end result is

hopefully a toolkit of ideas and examples which can be applied by biologists in a variety

of situations.

Tim J. Stevens

Wayne Boucher



Cambridge

January 2014



Download 7,75 Mb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6   7   8   9   ...   514




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish