Beginner
Python for Bioinformatics
From Zero to Biological Data
14 modules187 lessons17 h 15 min
No prior experience needed
What you'll learn
- Read and write simple Python programs
- Store text and numbers in variables
- Make programs that think and repeat work
- Represent DNA and protein sequences as data
- Compute real biological quantities like GC content
Your path
0. Welcome to Programming30 min0/9
- 0.1 · What is programming?
- 0.2 · What is Python?
- 0.3 · How this course works
- 0.4 · Your first Python instruction
- 0.5 · Code editor and output
- 0.6 · What does "Run code" mean?
- 0.7 · Reading simple Python
- 0.8 · Your first mistake
- 0.9 · Module review
1. Your First Python Programs1 h 10 min0/13
- 1.1 · print()
- 1.2 · Text and strings
- 1.3 · Numbers
- 1.4 · Simple calculations
- 1.5 · Comments
- 1.6 · Variables
- 1.7 · Changing variables
- 1.8 · Variable names
- 1.9 · Basic types
- 1.10 · Combining text and values
- 1.11 · f-strings
- 1.12 · Your first errors
- 1.13 · Module challenge
2. Making Programs Think1 h 5 min0/12
- 2.1 · Questions with True and False
- 2.2 · Comparison operators
- 2.3 · if
- 2.4 · Indentation
- 2.5 · else
- 2.6 · elif
- 2.7 · and
- 2.8 · or
- 2.9 · not
- 2.10 · Combining conditions
- 2.11 · Common conditional mistakes
- 2.12 · Module challenge
3. Repeating Work1 h 5 min0/12
- 3.1 · Why computers repeat tasks
- 3.2 · for loops
- 3.3 · range()
- 3.4 · Repeating calculations
- 3.5 · Looping through text
- 3.6 · Looping through DNA
- 3.7 · while loops
- 3.8 · break
- 3.9 · continue
- 3.10 · Nested repetition, introductory
- 3.11 · Common loop mistakes
- 3.12 · Module challenge
4. Working with Text1 h 10 min0/13
- 4.1 · Strings in more detail
- 4.2 · String length
- 4.3 · Indexing
- 4.4 · Zero-based indexing explained
- 4.5 · Negative indexing
- 4.6 · Slicing
- 4.7 · Searching text
- 4.8 · count()
- 4.9 · replace()
- 4.10 · upper() and lower()
- 4.11 · Cleaning text
- 4.12 · Combining operations
- 4.13 · Module challenge
5. Organizing Data1 h 10 min0/13
- 5.1 · Why we need collections
- 5.2 · Lists
- 5.3 · Reading list elements
- 5.4 · Changing lists
- 5.5 · append()
- 5.6 · remove()
- 5.7 · len()
- 5.8 · Looping through lists
- 5.9 · Tuples
- 5.10 · Dictionaries
- 5.11 · Dictionary keys and values
- 5.12 · Sets
- 5.13 · Module challenge
6. Functions1 h 5 min0/12
- 6.1 · Why functions exist
- 6.2 · Creating your first function
- 6.3 · Calling a function
- 6.4 · Parameters
- 6.5 · Multiple parameters
- 6.6 · return
- 6.7 · return vs print
- 6.8 · Local variables
- 6.9 · Reusing functions
- 6.10 · Functions with biological data
- 6.11 · Debugging functions
- 6.12 · Module challenge
7. Files, Paths and Errors1 h 20 min0/15
- 7.1 · What is a file?
- 7.2 · Files and folders
- 7.3 · File extensions
- 7.4 · What is a path?
- 7.5 · Paths conceptually
- 7.6 · Reading a text file
- 7.7 · Writing a text file
- 7.8 · with open(...)
- 7.9 · Why files should be closed
- 7.10 · Exceptions
- 7.11 · try / except
- 7.12 · FileNotFoundError
- 7.13 · ValueError
- 7.14 · Debugging strategies
- 7.15 · Module challenge
8. Python Meets DNA1 h 30 min0/17
- 8.1 · Biology becomes data
- 8.2 · DNA as a string
- 8.3 · Sequence length
- 8.4 · Counting A/T/G/C
- 8.5 · Validating sequences
- 8.6 · GC content
- 8.7 · Complement
- 8.8 · Reverse
- 8.9 · Reverse complement
- 8.10 · DNA to RNA
- 8.11 · Codons
- 8.12 · Translation concept
- 8.13 · Stop codons
- 8.14 · Searching motifs
- 8.15 · Mutations as string changes
- 8.16 · Comparing sequences
- 8.17 · Mini project: DNA Analyzer
9. Biological File Formats1 h 10 min0/13
- 9.1 · What is FASTA?
- 9.2 · Anatomy of a FASTA record
- 9.3 · Headers
- 9.4 · Sequences
- 9.5 · Reading one FASTA record
- 9.6 · Multiple FASTA sequences
- 9.7 · A simple FASTA parser
- 9.8 · What is FASTQ?
- 9.9 · FASTQ structure
- 9.10 · What is a quality score?
- 9.11 · Quality scores conceptually
- 9.12 · TSV / CSV biological data
- 9.13 · Module challenge
10. Scientific Python1 h 25 min0/16
- 10.1 · What is a Python library?
- 10.2 · import
- 10.3 · Why scientists use libraries
- 10.4 · NumPy introduction
- 10.5 · NumPy arrays
- 10.6 · Basic calculations
- 10.7 · pandas introduction
- 10.8 · DataFrames
- 10.9 · Columns and rows
- 10.10 · Filtering biological data
- 10.11 · Summary statistics
- 10.12 · Matplotlib introduction
- 10.13 · First plot
- 10.14 · Labels and axes
- 10.15 · Biological measurements
- 10.16 · Module project
11. Biopython1 h 20 min0/15
- 11.1 · What is Biopython?
- 11.2 · Why use a library?
- 11.3 · Bio.Seq
- 11.4 · Seq objects
- 11.5 · complement()
- 11.6 · reverse_complement()
- 11.7 · transcription
- 11.8 · translation
- 11.9 · SeqRecord
- 11.10 · SeqIO
- 11.11 · Reading FASTA
- 11.12 · Reading multiple records
- 11.13 · FASTQ
- 11.14 · Basic sequence statistics
- 11.15 · Module challenge
12. Practical Bioinformatics1 h 15 min0/14
- 12.1 · Processing many sequences
- 12.2 · Filtering by length
- 12.3 · Filtering by GC
- 12.4 · Detecting invalid sequences
- 12.5 · Searching motifs
- 12.6 · Regular expressions: gentle intro
- 12.7 · Counting motifs
- 12.8 · Dictionaries and sequences
- 12.9 · Building summary tables
- 12.10 · Exporting CSV
- 12.11 · Creating plots
- 12.12 · Reusable analysis functions
- 12.13 · Pipeline thinking
- 12.14 · Module project
13. Final Project2 h0/13
- 13.1 · Understand the problem
- 13.2 · Design the program
- 13.3 · Read the input
- 13.4 · Validate sequence
- 13.5 · Calculate statistics
- 13.6 · Build functions
- 13.7 · Process multiple sequences
- 13.8 · Create table
- 13.9 · Plot
- 13.10 · Export results
- 13.11 · Final integration
- 13.12 · Final challenge
- 13.13 · Course completion