Julia Scientific Programming
Beschreibung
When you enroll for courses through Coursera you get to choose for a paid plan or for a free plan .
- Free plan: No certicification and/or audit only. You will have access to all course materials except graded items.
- Paid plan: Commit to earning a Certificate—it's a trusted, shareable way to showcase your new skills.
About this course: This four-module course introduces users to Julia as a first language. Julia is a high-level, high-performance dynamic programming language developed specifically for scientific computing. This language will be particularly useful for applications in physics, chemistry, astronomy, engineering, data science, bioinformatics and many more. As open source software, you will always have it available throughout your working life. It can also be used from the command line, program files or a new type of interface known as a Jupyter notebook (which is freely available as a service from JuliaBox.com). Julia is designed to address the requirements of high-performance numerical …

Frequently asked questions
Es wurden noch keine FAQ hinterlegt. Falls Sie Fragen haben oder Unterstützung benötigen, kontaktieren Sie unseren Kundenservice. Wir helfen gerne weiter!
When you enroll for courses through Coursera you get to choose for a paid plan or for a free plan .
- Free plan: No certicification and/or audit only. You will have access to all course materials except graded items.
- Paid plan: Commit to earning a Certificate—it's a trusted, shareable way to showcase your new skills.
About this course: This four-module course introduces users to Julia as a first language. Julia is a high-level, high-performance dynamic programming language developed specifically for scientific computing. This language will be particularly useful for applications in physics, chemistry, astronomy, engineering, data science, bioinformatics and many more. As open source software, you will always have it available throughout your working life. It can also be used from the command line, program files or a new type of interface known as a Jupyter notebook (which is freely available as a service from JuliaBox.com). Julia is designed to address the requirements of high-performance numerical and scientific computing while also being effective for general-purpose programming. You will be able to access all the available processors and memory, scrape data from anywhere on the web, and have it always accessible through any device you care to use as long as it has a browser. Join us to discover new computing possibilities. Let's get started on learning Julia. By the end of the course you will be able to: - Programme using the Julia language by practising through assignments - Write your own simple Julia programs from scratch - Understand the advantages and capacities of Julia as a computing language - Work in Jupyter notebooks using the Julia language - Use various Julia packages such as Plots, DataFrames and Stats The course is delivered through video lectures, on-screen demonstrations, quizzes and practical peer-reviewed projects designed to give you an opportunity to work with the packages.
Who is this class for: This course is for anyone wanting to learn how to use Julia for data analysis. This includes data scientists, engineers, mathematical modelling and students looking for new tools to work with data. Recommended Background A knowledge of high school mathematics is a basic requirement. While the class is designed for students with limited programming experience, some beginner programmers may find the class quite fast-paced. We recommend you work through the material slower, never forgetting that the only way to learn a language is to use it. We use Jupyter notebooks for the course and we encourage you to experiment with the notebooks we have created. For those of you who have done programming and want to get a taste of this language, you should be able to move through the material fast.
Created by: University of Cape Town-
Taught by: Juan H Klopper, Dr
Department of Surgery -
Taught by: Henri Laurie, Dr
Department of Mathematics and Applied Mathematics
Each course is like an interactive textbook, featuring pre-recorded videos, quizzes and projects.
Help from your peersConnect with thousands of other learners and debate ideas, discuss course material, and get help mastering concepts.
CertificatesEarn official recognition for your work, and share your success with friends, colleagues, and employers.
University of Cape Town The University of Cape Town is the oldest university in South Africa and is one of the leading research universities on the African continent. UCT has over 25 000 students, of whom 30% are postgraduate students. We offer degrees in six faculties: Commerce, Engineering & the Built Environment, Health Sciences, Humanities, Law, and Science. We pride ourself on our diverse student body, which reflects the many cultures and backgrounds of the region. We welcome international students and are currently home to thousands of international students from over 100 countries. UCT has a tradition of academic excellence that is respected world-wide and is privileged to have more than 30 A-rated researchers on our staff, all of whom are recognised as world leaders in their field. Our aim is to ensure that our research contributes to the public good through sharing knowledge for the benefit of society. Past students include five Nobel Laureates – Max Theiler, Alan Cormack, Sir Aaron Klug, Ralph Bunche and, most recently, J M Coetzee.Syllabus
WEEK 1
Welcome to the course
A warm welcome to Julia Scientific Programming. Over the next four weeks, we will provide you with an introduction to what Julia can offer. We have created a course which we hope will allow you to learn the basics of the language, and stimulate your imagination about how you can use Julia in your own context. This course is all about you exploring Julia - we can only demonstrate some of the capacity and encourage you to take the first steps. For those of you with a programming background, the course is intended to offer a jumpstart into using this language. If you are a novice or beginner programmer, you should follow along the simple coding but recognising that working through the material will not be sufficient to make you a proficient programmer in four weeks. You could see this as the ‘first date’ at the beginning of a long and beautiful new relationship. There is so much you will need to learn and discover. Good luck and we hope you enjoy the course! Best wishes, Henri and Juan
16 videos, 4 readings, 6 practice quizzes expand
- Video: Introduction to Julia scientific programming
- Reading: How this course works
- Practice Quiz: Is this course right for me?
- Reading: What to expect from Week 1
- Discussion Prompt: Meet and greet
- Video: Programming Languages and why Julia is special
- Video: Getting Ready: JuliaBox Part 1
- Reading: Using Jupyter Notebooks
- Video: Getting Ready: JuliaBox Part 2
- Video: The Julia REPL - Read, Evaluate and Print Loop
- Practice Quiz: JuliaBox and the Julia REPL
- Video: Arithmetic Expressions
- Video: Logical expressions
- Practice Quiz: Arithmetic and logical expressions in Julia
- Video: Types: Julia Type System
- Video: Arrays and Abstract types
- Practice Quiz: Types and Arrays in Julia
- Video: Functions I - built-in functions
- Video: Functions II - user-defined functions
- Practice Quiz: Julia functions
- Video: Week 1: Getting Practice
- Reading: Approach to assessment in course
- Video: How to Install Julia on Mac OS X
- Video: Installing Julia on Linux
- Video: Installing Julia on Windows
- Video: Opening notebooks in IJulia
- Practice Quiz: What makes Julia special?
Graded: Week 1 Graded Quiz
WEEK 2
A context for exploring Julia: Working with data
In our case study we use Julia to store, plot, select and slice data from the Ebola epidemic. Taking real data, we explain how to work in Julia using arrays, and for loops to work with the structures. By the end of this module, you will be able to: create an array from data; learn to use the logical structures IF and FOR ; conduct basic array slicing, getting the incidence data and generating total number of cases; use Plots to generate graphs and plot data; and combine the Ebola data outputs to show a plot of disease incidence in several countries.
9 videos, 1 reading, 2 practice quizzes expand
- Reading: What to expect from Week 2
- Video: Introduction to Week 2
- Video: The Ebola Epidemic of 2014
- Video: Loading data
- Video: Creating CSV files (Optional)
- Video: "For" Loops and data format conversions
- Practice Quiz: Data and Loops in Julia
- Video: Simple Plots with the Plots Package
- Video: Plotting Multiple Curves in a Single Diagram
- Practice Quiz: Plots in Julia
- Video: Week 2: Getting Practice
- Video: How to do a Peer Graded Assignment
- Peer Review: Creating a Notebook to describe a function (Optional)
Graded: Week 2 - Graded quiz
WEEK 3
Notebooks as Julia Programs
in this week, we demonstrate how it is possible to use Julia in the notebook environment to interpret a model and its fit to the data from the Ebola outbreak. For this, we apply the well-known SIR compartmental model in epidemiology. The SIR model labels three compartments, namely S = number susceptible, I =number infectious, and R =number recovered. By the end of this module, you will be able to: understand the SIR models; describe the basic parameters of an SIR model; plot the model-predicted curve and the data on the same diagram; adjust the parameters of the model so the model-predicted curve is close (or rather as close as you can make it) to the data.
16 videos, 1 reading, 2 practice quizzes expand
- Reading: What to expect from Week 3
- Video: Introduction to Week 3
- Video: SIR Models of Disease Dynamics
- Video: on SIR Models
- Practice Quiz: Making simple models
- Video: Plotting Data
- Video: Using the Data: A rough fit of the model parameters
- Practice Quiz: Models
- Video: Week 3 Getting practice
- Video: Practicing fitting a circle to data
- Video: Week 3 Wrap Up
- Video: User Defined Types: Introduction
- Video: User Defined Types: The Julia Type System & Declaring a Type
- Video: User Defined Types: Creating Your Own Type
- Video: User Defined Types: Conversion & Promotion & Parametrizing a Type
- Video: User Defined Types: Equality of Values & Types & Defining Methods for User Types
- Video: User Defined Types: Complex Parameters
- Video: User Defined Types: Screen Output of User Defined Types
- Video: User Defined Types: Constraining Field Values
Graded: Plotting data and fitting a curve
Graded: User-defined types (Honors)
WEEK 4
Structuring data and functions in Julia
As a scientific computing language, Julia is well suited to the task of working with data. In this last module, we elaborate on the two most important concepts in Julia, arrays and functions. They are the fundamental building blocks of holding and manipulating data. You should see this week as offering you a chance to further explore concepts introduced in week one and two. You will also be introduced to more efficient ways of managing and visualizing your data. By the end of this module, you will be able to: 1. Apply and understand how to work with arrays 2. Practice Julia functions 3. Explore extension packages 4. be familiar with the Dataframes package 5. Plot a variety of data from the dataset, ready for publication.
35 videos, 3 readings, 3 practice quizzes expand
- Reading: What to expect from week 4
- Reading: Packages - Local installation of Julia vs. juliabox.com
- Video: Collections: Introduction
- Video: Collections: Creating Arrays
- Video: Collections: Slicing & Modifying Arrays
- Video: Collections: Comprehensions & Operations
- Video: Collections: Additional - NA & Tuples
- Video: Collections: Additional - Dictionaries
- Video: Collections: Recap
- Practice Quiz: Collections
- Video: Functions: Introduction
- Video: Functions: Single & Multiple expression functions
- Video: Functions: Optional & Keyword Arguments
- Video: Functions: Variable Number of Arguments
- Video: Functions: Additional Passing Arrays as Arguments & Type Parameters
- Video: Functions: Additional - Stabby Functions & Passing Functions as Arguments
- Video: Functions: Recap
- Practice Quiz: Functions
- Video: Data Frames: Introduction
- Video: Data Frames: Data Arrays & Data Frames
- Video: Data Frames: Get to Know your Data
- Video: Data Frames: Importing & Exporting
- Video: Data Frames: Joins & Groups
- Video: Data Frames: Sorting, Duplicates & NA
- Video: Data Frames: Renaming Columns
- Video: Data Frames: Recap
- Video: Data: Introduction
- Video: Data Vizualization: Randn & Distributions
- Practice Quiz: DataFrames and Data Visualizations
- Reading: Completing the course
- Video: Data Vizualization: Comparison
- Video: Data Vizualization: Plotly
- Video: Data Vizualization: Recap
- Video: Gadfly: Introduction
- Video: Gadfly: Simple plotting & Adding Layers
- Video: Gadfly: Using Themes
- Video: Gadfly: Adding Titles and Axis Labels & Saving a Plot & Importing Data into a DataFrame
- Video: Gadfly: Box Plots
- Video: Gadfly: Density Plots & Histogram & Violin Plots
- Video: Gadfly: QQ Plots & Scatter Plots & Vertical and Horizontal Lines
- Video: Gadfly: Examples
Graded: Working with Distributions and DataFrames
Graded: Working with data (Honors)
Graded: Gadfly (Honors)
Werden Sie über neue Bewertungen benachrichtigt
Schreiben Sie eine Bewertung
Haben Sie Erfahrung mit diesem Kurs? Schreiben Sie jetzt eine Bewertung und helfen Sie Anderen dabei die richtige Weiterbildung zu wählen. Als Dankeschön spenden wir € 1,00 an Stiftung Edukans.Es wurden noch keine FAQ hinterlegt. Falls Sie Fragen haben oder Unterstützung benötigen, kontaktieren Sie unseren Kundenservice. Wir helfen gerne weiter!