Summary and Schedule
The best way to learn how to program is to do something useful, so this introduction to MATLAB is built around a common scientific task: data analysis. Our real goal isn’t to teach you MATLAB, but to teach you the basic concepts that all programming depends on. We use MATLAB in our lessons because:
- we have to use something for examples;
- it’s well-documented;
- it has a large (and growing) user base among scientists in academia and industry; and
- it has a large library of packages available for performing diverse tasks.
But the two most important things are to use whatever language your colleagues are using, so that you can share your work with them easily, and to use that language well.
We are studying inflammation in patients who have been given a new
treatment for arthritis, and need to analyze the first dozen data sets.
The data sets are stored in Comma Separated Values
(CSV) format: each row holds information for a single patient, and
the columns represent successive days. The first few rows of our first
look like this:
0,0,1,3,1,2,4,7,8,3,3,3,10,5,7,4,7,7,12,18,6,13,11,11,7,7,4,6,8,8,4,4,5,7,3,4,2,3,0,0 0,1,2,1,2,1,3,2,2,6,10,11,5,9,4,4,7,16,8,6,18,4,12,5,12,7,11,5,11,3,3,5,4,4,5,5,1,1,0,1 0,1,1,3,3,2,6,2,5,9,5,7,4,5,4,15,5,11,9,10,19,14,12,17,7,12,11,7,4,2,10,5,4,2,2,3,2,2,1,1 0,0,2,0,4,2,2,1,6,7,10,7,9,13,8,8,15,10,10,7,17,4,4,7,6,15,6,4,9,11,3,5,6,3,3,4,2,3,2,1 0,1,1,3,3,1,3,5,2,4,4,7,6,5,3,10,8,10,6,17,9,14,9,7,13,9,12,6,7,7,9,6,3,2,2,4,2,0,1,1
We want to:
- load that data into memory,
- calculate the average inflammation per day across all patients, and
- plot the result.
To do all that, we’ll have to learn a little bit about programming.
|Setup Instructions||Download files required for the lesson|
|Duration: 00h 00m||1. Working With Variables||How can I store values and do simple calculations with them?|
|Duration: 01h 05m||2. Arrays||How can I access subsets of data?|
|Duration: 01h 25m||3. Plotting data||How can I process and visualize my data?|
|Duration: 02h 00m||4. Writing MATLAB Scripts||How can I save and re-use my programs?|
|Duration: 02h 35m||5. Repeating With Loops||How can I repeat the same operations on multiple values?|
|Duration: 03h 25m||6. Making Choices||How can programs do different things for different data values?|
|Duration: 04h 05m||7. Creating Functions||How can I teach MATLAB how to do new things?|
|Duration: 05h 10m||8. Defensive Programming||How can I make sure my programs are correct?|
|Duration: 05h 40m||Finish|
The actual schedule may vary slightly depending on the topics and exercises chosen by the instructor.
You will need to install MATLAB or GNU Octave to do this lesson.
You will also need to download some data, which we will analyze using MATLAB:
Download matlab-novice-inflammation.zip and move the file to your Desktop.
Extract the zip archive. This will create a
matlab-novice-inflammationdirectory containing the data files used in the lesson. Note that on Windows, double-clicking on the zip file simply previews the contents: to extract, right-click and select Extract All
You can access this folder from the Unix shell with: