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 Julia's specific niche
- 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 further assistance: Julia forums and community resources
Strings: Hello World
- Introduction to Julia REPL and batch execution via "Hello World"
- Understanding Julia String Types
Scalar Types
- Understanding variables: naming conventions and type assignments
- Working with Integers
- Working with Floating point numbers
- Working with Complex numbers
- Working with Rational numbers
Arrays
- Vectors
- Matrices
- Multi-dimensional arrays
- Heterogeneous arrays (cell arrays)
- Using Comprehensions
Other Elementary Types
- Tuples
- Ranges
- Dictionaries
- Symbols
Building Your Own Types
- Abstract types
- Composite types
- Parametric composite types
Functions
- Defining functions in Julia
- Julia functions as methods operating on types
- Understanding Multiple dispatch
- Differences between multiple dispatch and traditional object-oriented programming
- Parametric functions
- Functions that modify their input
- 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
- Internal representation
- Parsing
- Evaluation
- Interpolation
Reading and Writing Data
- Filesystem operations
- Data I/O
- Lower Level Data I/O
- Dataframes
Distributions and Statistics
- Defining distributions
- Interface for evaluating and sampling from distributions
- Mean, variance and covariance
- Hypothesis testing
- Generalized linear models: a linear regression example
Plotting
- Plotting packages: Gadfly, Winston, Gaston, PyPlot, Plotly, Vega
- Introduction to Gadfly
- Interact and Gadfly
Parallel Computing
- Introduction to Julia's message passing implementation
- Remote calling and fetching
- Parallel map (pmap)
- Parallel for
- Scheduling via tasks
- Distributed arrays
Requirements
While some prior programming experience is beneficial, it is not a strict requirement. The course aims to provide a comprehensive introduction to the fundamentals of the Julia programming language.
14 Hours
Testimonials (1)
everything about Julia