Thank you for sending your enquiry! One of our team members will contact you shortly.
Thank you for sending your booking! One of our team members will contact you shortly.
Course Outline
Julia Programming: An Introduction
- Understanding Julia's niche in the market
- Leveraging Julia for data analysis
- Key takeaways from this course
- Getting started with Julia's REPL (Read-Eval-Print Loop)
- Exploring alternative development environments: Juno, IJulia, and Sublime-IJulia
- Navigating the Julia ecosystem: documentation and package discovery
- Accessing support: Julia forums and community resources
Strings: Hello World
- Introduction to Julia REPL and batch execution using a 'Hello World' example
- Overview of Julia String Types
Scalar Types
- Understanding variables: purpose, naming, and typing
- Integers
- Floating-point numbers
- Complex numbers
- Rational numbers
Arrays
- Vectors
- Matrices
- Multi-dimensional arrays
- Heterogeneous arrays (cell arrays)
- List comprehensions
Other Elementary Types
- Tuples
- Ranges
- Dictionaries
- Symbols
Defining Custom Types
- Abstract types
- Composite types
- Parametric composite types
Functions
- Syntax for defining functions in Julia
- Functions as methods operating on types
- Understanding multiple dispatch
- Differences between multiple dispatch and traditional object-oriented programming
- Parametric functions
- Functions with side effects (changing input)
- Anonymous functions
- Optional function arguments
- Required function arguments
Constructors
- Inner constructors
- Outer constructors
Control Flow
- Compound expressions and variable scoping
- Conditional evaluation
- Loop structures
- Exception handling
- Tasks
Code Organization
- Modules
- Packages
Metaprogramming
- Symbols
- Expressions
- Quoting
- Internal representation of code
- Parsing
- Evaluation
- Interpolation
Reading and Writing Data
- Filesystem operations
- Data Input/Output (I/O)
- Low-level Data I/O
- DataFrames
Distributions and Statistics
- Defining statistical distributions
- Interfaces for evaluating and sampling from distributions
- Calculating mean, variance, and covariance
- Hypothesis testing
- Generalized linear models: a linear regression case study
Plotting
- Overview of plotting packages: Gadfly, Winston, Gaston, PyPlot, Plotly, and Vega
- Introduction to Gadfly
- Integrating Interact with Gadfly
Parallel Computing
- Introduction to Julia's message-passing implementation
- Remote function calls and fetching results
- Parallel map (pmap)
- Parallel for loops
- Scheduling via tasks
- Distributed arrays
Requirements
While some prior programming experience is beneficial, it is not a strict requirement. The primary goal of this course is to provide a comprehensive, self-contained introduction to the fundamental concepts of the Julia programming language.
14 Hours
Testimonials (1)
everything about Julia