Skip to content

Latest commit

 

History

History
50 lines (37 loc) · 2.04 KB

File metadata and controls

50 lines (37 loc) · 2.04 KB
site sandpaper::sandpaper_site

The best way to learn how to program is to do something useful, so this introduction to Julia is built around a common scientific task: data analysis.

Our real goal isn't to teach you Julia, but to teach you the fundamental concepts that all programming depends on. We use Julia in this lesson because:

  1. of it's expressive syntax;
  2. it's free, open-source, and designed for high-performance computing;
  3. it is increasingly popular in scientific computing and data analysis; and
  4. it has a growing ecosystem of external packages for diverse tasks.

We are studying inflammation in patients who have been given a new treatment for arthritis, and need to analyze the first dozen data sets of their daily inflammation. The data sets are stored in CSV format (comma-separated values): each row holds information for a single patient, and the columns represent successive days. The first few rows of our first file 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:

  1. Calculate the average inflammation per day across all patients.
  2. Plot the result to discuss and share with colleagues.

To do all that, we'll have to learn a little bit about programming.

:::::::::::::::::::::::::::::::::::::::::: prereq

Prerequisites

You need to understand the concepts of files and directories and how to start a Julia interpreter before tackling this lesson. This lesson sometimes references Jupyter Notebook although you can use any Julia interpreter mentioned in the Setup.

::::::::::::::::::::::::::::::::::::::::::::::::::