Computational Thinking for Life Scientists
Computational thinking is increasingly gaining importance in modern biology, due to the unprecedented scale at which data is nowadays produced. Bridging the cultural gap between the biological and computational sciences, this book serves as an accessible introduction to computational concepts for students in the life sciences. It focuses on teaching algorithmic and logical thinking, rather than just the use of existing bioinformatics tools or programming. Topics are presented from a biological point of view, to demonstrate how computational approaches can be used to solve problems in biology such as biological image processing, regulatory networks, and sequence analysis. The book contains a range of pedagogical features to aid understanding, including real-world examples, in-text exercises, end-of-chapter problems, colour-coded Python code, and 'code explained' boxes. User-friendly throughout, Computational Thinking for Life Scientists promotes the thinking skills and self-efficacy required for any modern biologist to adopt computational approaches in their research with confidence.
- Follows a breadth-first approach to offer insight into a variety of topics representative of multiple intersection points between biology and computer science
- Provides an introduction to Python programming in Chapter 1 to ensure readers have the necessary knowledge to understand later chapters of the book
- Contains full Python code examples to provide hands-on experience
- Contains exercises and end-of-chapter problems to support efficient learning
Reviews & endorsements
'An excellent and very gentle introduction to bioinformatics for biologists. In contrast to books that focus on algorithms and ignore programming or focus on programming without explaining algorithms, this book is a perfect blend of both algorithms and programming!' Pavel Pevzner, Ronald R. Taylor Chair and Distinguished Professor of Computer Science, University of California at San Diego
'The ability to extract quantitative information from data is an essential skill for the modern biologist. In order to maximize the benefit of programming, use of existing computational tools and effective collaboration with computational scientists, biologists must be able to 'think computationally' by gaining a more algorithmic and logical thinking. In their book, Benny Chor and Amir Rubinstein introduce fundamental computational concepts to life sciences students. Each chapter covers a distinct computational idea motivated by a concrete biological challenge. Questions embedded throughout each chapter and code examples provide hands-on practice. Similarly to the way in which chemistry is perceived as being essential to the biology curriculum, computational thinking should also be considered a part of the modern biologist's basic training. This excellent book is essential reading for undergraduate life sciences students.' Assaf Zaritsky, Ben-Gurion University of the Negev, Israel
'… an excellent introduction to programming for scholars in the life sciences … This book provides a strong, domain-specific foundation and belongs in the library of any institution supporting instruction in the life sciences. … Highly recommended.' J. Forrest, Choice
Product details
No date availablePaperback
9781316647592
216 pages
244 × 169 × 10 mm
0.42kg
Table of Contents
- Introduction
- Part I. Programming in Python:
- 1. Crash introduction to python
- 2. Efficiency matters – gentle intro to complexity
- Part II. Sequences:
- 3. Sets dictionaries and hashing
- 4. Regular expressions and biological patterns
- Part III. Networks:
- 5. Basic notions in graph theory
- 6. Shortest paths and breadth first search
- 7. Simulation of regulatory networks
- Part IV. Images:
- 8. Digital images representation
- 9. Image processing
- Part V. Limitations of Computing:
- 10. Mission impossible
- 11. Mission infeasible
- Index.