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.
Introductory slides
The introductory slides, shown at the beginning of the session, contain a lot of useful links, including the feedback form.
GNU Octave
GNU Octave is a free and open-source alternative to MATLAB which shares its syntax (see more about compatibility). Thus, if you don’t have access to MATLAB, you can easily set up Octave on your computer and still work through the lesson.
Prerequisites
To begin tackling this lesson, you will need to:
- Understand the concepts of files and directories, and the concept of a “working directory”.
- Know how to start up MATLAB, and access the command window
(which generally has a
>>
prompt). - Know how to create, edit and save text files.
Overview of the data
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
file, inflammation-01.csv
,
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. Introduction |
“What kinds of diseases can be observed in chest X-rays?” “What is pleural effusion?” |
Duration: 00h 30m | 2. Visualisation |
“How does an image with pleural effusion differ from one
without?” “How is image data represented in a NumPy array?” |
Duration: 01h 00m | 3. Data preparation |
“What is the purpose of data augmentation?” “What types of transform can be applied in data augmentation?” |
Duration: 01h 30m | 4. Neural networks |
“What is a neural network?” “What are the characteristics of a dense layer?” “What is an activation function?” “What is a convolutional neural network?” |
Duration: 02h 00m | 5. Writing MATLAB Scripts | “How can I save and re-use my programs?” |
Duration: 02h 35m | 6. Creating Functions | “How can I teach MATLAB how to do new things?” |
Duration: 03h 40m | 7. Repeating With Loops | “How can I repeat the same operations on multiple values?” |
Duration: 04h 30m | 8. Making Choices |
“How can programs do different things for different data
values?” objectives: “Construct a conditional statement using if, elseif, and else” “Test for equality within a conditional statement” “Combine conditional tests using AND and OR” “Build a nested loop” |
Duration: 05h 10m | 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-inflammation
directory 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 AllYou can access this folder from the Unix shell with: