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 specific niche Julia occupies
- Leveraging Julia for data analysis
- Key takeaways from this course
- Getting started with Julia's REPL
- Alternative Julia development environments: Juno, IJulia, and Sublime-IJulia
- Exploring the Julia ecosystem: documentation and package discovery
- Accessing additional support: Julia forums and community resources
Strings: Hello World
- Introduction to the Julia REPL and batch execution via the "Hello World" program
- Understanding Julia String Types
Scalar Types
- Understanding variables: why names and types matter
- 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
Building Your Own Types
- Abstract types
- Composite types
- Parametric composite types
Functions
- Defining functions in Julia
- Julia functions as methods operating on types
- Multiple dispatch
- How multiple dispatch differs from traditional object-oriented programming
- Parametric functions
- Functions that modify input
- Anonymous functions
- Optional function arguments
- Required function arguments
Constructors
- Inner constructors
- Outer constructors
Control Flow
- Compound expressions and scoping
- 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
- Low-level data I/O
- Dataframes
Distributions and Statistics
- Defining distributions
- Interfaces 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
- Integrating Interact with 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 prior programming experience is beneficial, it is not a strict requirement. The primary objective of this course is to provide a comprehensive, self-contained foundation in the Julia programming language.
14 Hours
Testimonials (1)
everything about Julia