Course Identification

Introduction to Matlab and data analysis

Lecturers and Teaching Assistants

Dr. Natalie Kronik, Dr. Saikat Ray
Dr. Amir Haluts, Shir Rachel Maimon, Michael Sokoletsky, Alice Eldar, Saikat Ray

Course Schedule and Location

First Semester
Sunday, 11:15 - 13:00, FGS, Rm C

Wednesday, 11:15 - 13:00, FGS, Rm B
Thursday, 15:15 - 17:00, FGS, Rm B

Field of Study, Course Type and Credit Points

Life Sciences: Lecture; Elective; Regular; 3.00 points
Chemical Sciences: Lecture; Elective; Regular; 2.00 points
Life Sciences (Brain Sciences: Systems, Computational and Cognitive Neuroscience Track): Lecture; Elective; Regular; 3.00 points
Life Sciences (Computational and Systems Biology Track): Lecture; Elective; Core; 3.00 points







Language of Instruction


Attendance and participation

Expected and Recommended

Grade Type

Pass / Fail

Grade Breakdown (in %)

Final project- must get 85 + for a passing grade in the course

Evaluation Type

Final assignment

Scheduled date 1


Estimated Weekly Independent Workload (in hours)



The course will teach how MATLAB can be used to solve practical problems in data analysis that come from a wide range of disciplines such as biology, chemistry and physics. The first part of the course focuses on the foundations of Matlab programming:

  1. The Matlab working environment
  2. Variables, constants and reserved words
  3. Arrays and matrices
  4. Scripts
  5. The debugger
  6. Generating 2D and 3D Graphics
  7. Simple statistical analysis
  8. String manipulation
  9. Boolean logic and if statements
  10. Loops (while, for)
  11. Functions & Files
  12. Program design
  13. Matlab structures
  14. Complexity
  15. Producing publication quality graphs

The second part of the course focuses on applying Matlab to practical problems in
data analysis:

  1. Mathematical modeling of cancer therapy using the Matlab ODE solvers
  2. Systems biology: protein production gene expression
  3. Analyzing images using the Matlab image processing toolbox



[1] Introduction

a. Why learn Matlab?
b. The Matlab working environment
c. The "help" command
d. Our first Matlab program.


[2] Basics

a. Variables, constants and reserved words
b. Arrays and matrices
c. Scripts
d. The debugger

[3] Graphics and simple analysis

a. 2D Graphics
b. simple statistical analysis (mean, std etc)
c. String manipulation

[4] Control

a. Boolean logic
b. If statements

[5] Loops

a. while
b. for

[6] Functions & Files

[7] Program design

a. Matlab structures
b. Top down, bottom up, etc
c. Complexity

[8] Making simple GUIs

[9] Matlab image processing 

[10] Using Matlab table

[11] Solving differential equations numerically using Matlab

[12] & [13] Introduction of some advanced topics in how to prepare Graphs using Matlab:

a. Preparing publication-quality figures in Matlab
b. How to make Movies of data in Matlab
c. Tricks for extracting raw data from old published graphs
d. Advanced topics in 2-D and 3-D graphs: efficient ways of making graphs; more about Handle Graphics; Latex formatting of text embedded in graphs

[14] Mathematical modeling of ordinary differential equations in Matlab.


Learning Outcomes

Upon successful completion of this course students should be be able to:

  1. Demonstrate basic skills in Matlab programming, using 'if' and 'while' loops, using Boolean logic and flow control, creating functions and designing programs in Matlab.
  2. Use Matlab cell arrays.
  3. Produce publication quality graphs in Matlab.
  4. Perform numerical analysis using Matlab.

Reading List