Skip to content

JiaweiShen1116/Materials

 
 

Repository files navigation

Materials

This repository contains lecture PDFs and Jupyter Notebooks for BILD 62. It can be launched in Google Colab using the button below.

Open In Colab

Sample syllabus

See the syllabus from Spring 2022 here.

Week 1: Tools, programming fundamentals, & basic Python syntax

To set the foundation for this course, we’ll introduce the approaches and tools that we’ll use throughout, as well as the motivation for learning how to code as a biology student. I'll show you where to find Python, either on your own computer, or in Jupyter Notebooks (via the DataHub).

Week 2: Expressions, variables, & data structures

We’ll also introduce fundamental programming concepts, such as coding syntax, assigning variables, and writing expressions. You'll learn how to work with simple data structures in Python, including lists, tuples, and dictionaries. We’ll cover how to slice, index, and manipulate these data structures.

Week 3: Booleans, conditionals, loops, and functions

After establishing the basics of programming in Python, students will learn how to use Booleans in their code. We’ll also introduce conditionals and the different types of loops in Python, as well as introduce Functions.

Week 4: Object-oriented programming

Python, like many other programming languages, is object-oriented. In this week, we’ll explore classes and other implications of object-oriented programming.

Weeks 5: Scientific Computing

In these weeks, we will elaborate on the introduction to data structures (lists, tuples, and dictionaries) an introduce additional packages such as NumPy, Pandas, and SciPy for scientific computing.

Week 6: Statistics & Visualization

We'll discuss how to run simple statistics in Python, as well as how to visualize data.

Week 7: Time series analyses & image processing

How do we perform analyses on different times of biological time series, such as electrophysiology and imaging data? You'll perform time series analyses on electrophysiology and imaging data, and learn about the various types of signal processing used for different data types. We’ll introduce the various implementations of image processing in Python, e.g., for cell segmentation. We’ll discuss the fundamentals of storing images, image file types, etc.

Week 8: Debugging, documentation, and version control

As we move towards working on projects, it is important to introduce the ideas of properly documenting and code and using version control software.

Week 9: -- informatics

We'll discuss neuro-informatics and bioinformatics, and show you how to mine your own data.

Week 10: Final projects

Design a final project of your choosing! Build a computational model, analyze an open source data set... the sky is the limit.

FAQS

Who can take this course?

The course is restricted to undergraduates at UC San Diego. Anyone can use the materials here by using the Colab link above, though!

If I can't take this course, what are my alternatives?

There are many ways to learn Python, for free! You can check out DataQuest, this interactive textbook made by other instructors at UCSD, or The Whirlwind Tour of Python.

Do I need coding experience to succeed in this course?

No! This course assumes that you have absolutely none, zero, zippo, coding experience.

If I'm a biology student, why should I take coding?

Biology data is getting bigger and bigger each year! There are many flavors of -ohmics (genomics, proteomics, etc.) and each of those types of data analyses can benefit from a bit of coding knowledge. Coding can help you visualize your data, run statistics, create computational models of biological systems, and more.

What is the work load like for this course?

The main assessment in this course will be weekly coding assignments. In addition, there is a final group project.

About

Lecture notebooks for BILD 62

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Jupyter Notebook 100.0%