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
Introduction to Julia
- Identifying the niche Julia fills
- Leveraging Julia for data analysis
- Course expectations and outcomes
- Getting started with Julia's REPL
- Alternative development environments: Juno, IJulia, and Sublime-IJulia
- Navigating the Julia ecosystem: documentation and package discovery
- Seeking additional support: Julia forums and community resources
Strings: Hello World
- Introduction to the Julia REPL and batch execution using a "Hello World" example
- Understanding Julia String Types
Scalar Types
- Concepts of variables: naming and typing
- Integers
- Floating-point numbers
- Complex numbers
- Rational numbers
Arrays
- Vectors
- Matrices
- Multi-dimensional arrays
- Heterogeneous arrays (cell arrays)
- Array comprehensions
Other Elementary Types
- Tuples
- Ranges
- Dictionaries
- Symbols
Creating Custom Types
- Abstract types
- Composite types
- Parametric composite types
Functions
- Defining functions in Julia
- Julia functions as methods operating on types
- Understanding multiple dispatch
- How multiple dispatch differs from traditional object-oriented programming
- Parametric functions
- Functions that modify their inputs
- Anonymous functions
- Optional function arguments
- Required function arguments
Constructors
- Inner constructors
- Outer constructors
Control Flow
- Compound expressions and scoping rules
- Conditional evaluation
- Loops
- Exception handling
- Tasks
Code Organization
- Modules
- Packages
Metaprogramming
- Symbols
- Expressions
- Quoting mechanisms
- Internal representation of code
- Parsing processes
- Evaluation techniques
- Interpolation
Reading and Writing Data
- Filesystem operations
- Data Input/Output (I/O)
- Lower-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, Vega
- Introduction to Gadfly
- Integrating Interact with Gadfly
Parallel Computing
- Overview of Julia's message passing implementation
- Remote calling and data fetching
- 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 course is designed to teach the fundamentals of the Julia programming language in a comprehensive, self-contained manner.
14 Hours
Testimonials (1)
everything about Julia