Welcome to Plants & Python

a series of lessons in coding, plant biology, computation, and bioinformatics


# To load the video, execute this cell by pressing shift + enter

from IPython.display import YouTubeVideo

YouTubeVideo("wXAf_XSNeZ4",width=640,height=360)

The following is a transcript of the video.


Motivation and rationale

These lessons assume no prior experience in plant biology or coding. It is impossible to teach the breadth of plant biology and data science in just a few lessons. Rather, these lessons select specific examples in which mathematical and modeling approaches intersect with the biology of plants.

Coding in plant biology can be intimidating to those with no prior experience. These materials are designed to make these  disciplines welcoming. A diversity of perspectives  is vital to combat the grandest challenges of our time and there is no room for gatekeeping or shaming. Your contributions to the computational plant science community are needed and precious.

These materials are only meant as an introduction for you to develop your skills to pursue your intended impacts. There are no wrong answers: use these materials in whatever way is useful for you to further your education and career. Share these materials with others in the same spirit  and spread your knowledge.

Above all, find joy in the way that mathematics and modeling can  reveal the underlying beauty of plants.


Plants inspire us

The mathematical and computational concepts in these lessons are inspired by plants.

Plants are the original computers: they iteratively produce organs like leaves and flowers with intricate shapes precisely arranged in exquisite  patterns.

Plants are the original mathematicians: they calculate numbers like the Golden ratio, intrinsic to how they grow and develop.

Plant morphology is encoded by DNA at the genomic level and the beautiful forms plants produce result from complex spatial temporal gene expression patterns. Plants have evolved unimaginable diversity over  millions of years that humanity has used to feed, clothe, shelter, and medicate itself. In addition, plants sustain the earth’s biodiversity,  contributing to thriving ecosystems. Plants respond to their environment, both evolving over hundreds of millions of years  and responding to the current climate crisis over only decades.


Coding basics and bioinformatics

The first half of this course covers Python and coding basics. You’ll learn about variables, functions, lists, and indexing. How to visualize your data using  matplotlib. How to calculate the Golden angle with loops and model the growth of a sunflower.  And how to analyze data using pandas. Some of the examples in these lessons include plotting  out the shapes of different grapevine species, modeling the growth of sunflowers and looking for patterns in their form, and looking at the harvest dates of grapevines in Europe over centuries and how a warming planet has made their harvest dates earlier.

In the second half of the course, you’ll be learning about computation and bioinformatics. You’ll learn how to use the command line; how to access high performance computing resources; how to store, edit, manipulate, and use biological sequences like DNA; you’ll learn about genome assembly and comparative genomics; and you’ll also learn about short read gene expression analysis.


Python and Jupyter

The structure of these lessons is of course based in Python. Python is a versatile coding language. It’s good for modeling and for computation. It also contains Biopython, which contains tools for genomics and  bioinformatics that you’ll be learning about. The other coding language that’s used often in biology is R. R is better for specialized needs like statistics, while Python is more diverse. The coding lessons though you learn in this course can be transferred to R.

Our lessons  will take place in an environment called Jupyter. Jupyter notebooks support learning to code,  research, and reproducing and sharing code and embedded in these notebooks will be video tutorials, like this one, which are meant to allow you to go over the concepts at your own pace. And please, feel free to stop, rewind, and go over material as is necessary.

This course brings together plant biologists who may not know how to code together with data scientists who may not know about biology or plants. If you are familiar with the  presented topics always look deeper, look to the synthesis between plant biology and data science. What is the underlying biology of the unsolved problem? What mathematical concepts remain to be explored? What is the grand challenge? You can always take this material to the next level if you have already mastered what is being presented. Research further and push the boundary. Again, above all find joy in the way that mathematics and modeling reveals the underlying beauty of plants.

Thank you and best wishes on your learning and research journey!