Beginner

Python for Bioinformatics

From Zero to Biological Data

14 modules187 lessons17 h 15 min

No prior experience needed

Progress0%

0/187 lessons

Start the course

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