• Complain

Ken Youens-Clark - Mastering Python for Bioinformatics

Here you can read online Ken Youens-Clark - Mastering Python for Bioinformatics full text of the book (entire story) in english for free. Download pdf and epub, get meaning, cover and reviews about this ebook. year: 2021, publisher: OReilly Media, genre: Computer. Description of the work, (preface) as well as reviews are available. Best literature library LitArk.com created for fans of good reading and offers a wide selection of genres:

Romance novel Science fiction Adventure Detective Science History Home and family Prose Art Politics Computer Non-fiction Religion Business Children Humor

Choose a favorite category and find really read worthwhile books. Enjoy immersion in the world of imagination, feel the emotions of the characters or learn something new for yourself, make an fascinating discovery.

Ken Youens-Clark Mastering Python for Bioinformatics
  • Book:
    Mastering Python for Bioinformatics
  • Author:
  • Publisher:
    OReilly Media
  • Genre:
  • Year:
    2021
  • Rating:
    5 / 5
  • Favourites:
    Add to favourites
  • Your mark:
    • 100
    • 1
    • 2
    • 3
    • 4
    • 5

Mastering Python for Bioinformatics: summary, description and annotation

We offer to read an annotation, description, summary or preface (depends on what the author of the book "Mastering Python for Bioinformatics" wrote himself). If you haven't found the necessary information about the book — write in the comments, we will try to find it.

Ken Youens-Clark: author's other books


Who wrote Mastering Python for Bioinformatics? Find out the surname, the name of the author of the book and a list of all author's works by series.

Mastering Python for Bioinformatics — read online for free the complete book (whole text) full work

Below is the text of the book, divided by pages. System saving the place of the last page read, allows you to conveniently read the book "Mastering Python for Bioinformatics" online for free, without having to search again every time where you left off. Put a bookmark, and you can go to the page where you finished reading at any time.

Light

Font size:

Reset

Interval:

Bookmark:

Make
Mastering Python for Bioinformatics

by Ken Youens-Clark

Copyright 2021 Charles Kenneth Youens-Clark. All rights reserved.

Printed in the United States of America.

Published by OReilly Media, Inc. , 1005 Gravenstein Highway North, Sebastopol, CA 95472.

OReilly books may be purchased for educational, business, or sales promotional use. Online editions are also available for most titles (http://oreilly.com). For more information, contact our corporate/institutional sales department: 800-998-9938 or corporate@oreilly.com .

  • Acquisitions Editor: Michelle Smith
  • Development Editor: Corbin Collins
  • Production Editor: Caitlin Ghegan
  • Copyeditor: Sonia Saruba
  • Proofreader: Rachel Head
  • Indexer: Sue Klefstad
  • Interior Designer: David Futato
  • Cover Designer: Karen Montgomery
  • Illustrator: Kate Dullea
  • May 2021: First Edition
Revision History for the First Edition
  • 2021-05-04: First Release

See http://oreilly.com/catalog/errata.csp?isbn=9781098100889 for release details.

The OReilly logo is a registered trademark of OReilly Media, Inc. Mastering Python for Bioinformatics, the cover image, and related trade dress are trademarks of OReilly Media, Inc.

The views expressed in this work are those of the author, and do not represent the publishers views. While the publisher and the author have used good faith efforts to ensure that the information and instructions contained in this work are accurate, the publisher and the author disclaim all responsibility for errors or omissions, including without limitation responsibility for damages resulting from the use of or reliance on this work. Use of the information and instructions contained in this work is at your own risk. If any code samples or other technology this work contains or describes is subject to open source licenses or the intellectual property rights of others, it is your responsibility to ensure that your use thereof complies with such licenses and/or rights.

978-1-098-10088-9

[LSI]

Preface

Programming is a force multiplier.We can write computer programs to free ourselves from tedious manual tasks and to accelerate research.Programming in any language will likely improve your productivity, but each language has different learning curves and tools that improve or impede the process of coding.

There is an adage in business that says you have three choices:

  1. Fast

  2. Good

  3. Cheap

Pick any two.

When it comes to programming languages, Python hits a sweet spot in that its fast because its fairly easy to learn and to write a working prototype of an ideaits pretty much always the first language Ill use to write any program.I find Python to be cheap because my programs will usually run well enough on commodity hardware like my laptop or a tiny AWS instance.However, I would contend that its not necessarily easy to make good programs using Python because the language itself is fairly lax.For instance, it allows one to mix characters and numbers in operations that will crash the program.

This book has been written for the aspiring bioinformatics programmer who wants to learn about Pythons best practices and tools such as the following:

  • Since Python 3.6, you can add type hints to indicate, for instance, that a variable should be a type like a number or a list, and you can use the mypy tool to ensure the types are used correctly.

  • Testing frameworks like pytest can exercise your code with both good and bad data to ensure that it reacts in some predictable way.

  • Tools like pylint and flake8 can find potential errors and stylistic problems that would make your programs more difficult to understand.

  • The argparse module can document and validate the arguments to your programs.

  • The Python ecosystem allows you to leverage hundreds of existing modules like Biopython to shorten programs and make them more reliable.

Using these tools practices individually will improve your programs, but combining them all will improve your code in compounding ways.This book is not a textbook on bioinformatics per se.The focus is on what Python offers that makes it suitable for writing scientific programs that are reproducible.That is, Ill show you how to design and test programs that will always produce the same outputs given the same inputs.Bioinformatics is saturated with poorly written, undocumented programs, and my goal is to reverse this trend, one program at a time.

The criteria for program reproducibility include:

Parameters

All program parameters can be set as runtime arguments. This means no hard-coded values which would require changing the source code to change the programs behavior.

Documentation

A program should respond to a --help argument by printing the parameters and usage.

Testing

You should be able to run a test suite that proves the code meets some specifications

You might expect that this would logically lead to programs that are perhaps correct, but alas, as Edsger Dijkstra famously said, Program testing can be used to show the presence of bugs, but never to show their absence!

Most bioinformaticians are either scientists whove learned programming or programmers whove learned biology (or people like me who had to learn both).No matter how youve come to the field of bioinformatics, I want to show you practical programming techniques that will help you write correct programs quickly.Ill start with how to write programs that document and validate their arguments.Then Ill show how to write and run tests to ensure the programs do what they purport.

For instance, the first chapter shows you how to report the tetranucleotide frequency from a string of DNA.Sounds pretty simple, right?Its a trivial idea, but Ill take about 40 pages to show how to structure, document, and test this program.Ill spend a lot of time on how to write and test several different versions of the program so that I can explore many aspects of Python data structures, syntax, modules, and tools.

Who Should Read This?

You should read this book if you care about the craft of programming, and if you want to learn how to write programs that produce documentation, validate their parameters, fail gracefully, and work reliably.Testing is a key skill both for understanding your code and for verifying its correctness.Ill show you how to use the tests Ive written as well as how to write tests for your programs.

To get the most out of this book, you should already have a solid understanding of Python.I will build on the skills I taught in Tiny Python Projects (Manning, 2020), where I show how to use Python data structures like strings, lists, tuples, dictionaries, sets, and named tuples.You need not be an expert in Python, but I definitely will push you to understand some advanced concepts I introduce in that book, such as types, regular expressions, and ideas about higher-order functions, along with testing and how to use tools like pylint, flake8, yapf, and pytest to check style, syntax, and correctness.One notable difference is that I will consistently use type annotations for all code in this book and will use the mypy tool to ensure the correct use of types.

Programming Style: Why I Avoid OOP and Exceptions

I tend to avoid object-oriented programming (OOP).If you dont know what OOP means, thats OK.Python itself is an OO language, and almost every element from a string to a set is technically an object with internal state and methods.You will encounter enough objects to get a feel for what OOP means, but the programs I present will mostly avoid using objects to represent ideas.

Next page
Light

Font size:

Reset

Interval:

Bookmark:

Make

Similar books «Mastering Python for Bioinformatics»

Look at similar books to Mastering Python for Bioinformatics. We have selected literature similar in name and meaning in the hope of providing readers with more options to find new, interesting, not yet read works.


Reviews about «Mastering Python for Bioinformatics»

Discussion, reviews of the book Mastering Python for Bioinformatics and just readers' own opinions. Leave your comments, write what you think about the work, its meaning or the main characters. Specify what exactly you liked and what you didn't like, and why you think so.