David Higgins, Robert Schwarz - Introduction to Julia for Scientific Computing and Data Science





The interactive transcript could not be loaded.


Rating is available when the video has been rented.
This feature is not available right now. Please try again later.
Published on Jul 26, 2017

Developed at MIT, with a focus on fast numerical computing, Julia has a syntactical complexity similar to that of Python or Matlab but a performance orders of magnitude faster. We will present an introduction to the language, followed by a sampling of some of our favourite packages. The focus is on which aspects of Julia are currently ready for use by numerical computing and data scientists.

Julia is a new and exciting language, sponsored in part by NumFocus, and developed at MIT. With a focus on fast numerical computing, it has a syntactical complexity similar to that of Python or Matlab but a performance orders of magnitude faster. This means you can quickly code up your ideas in a scripting language, but you don't need to switch langauges when you later need to squeeze out every last ounce of performance on production data.

Should you stick with Python, or is it time to move to Julia?

We will try to answer this question by presenting an introduction to the language, followed by a sampling of packages from the most important projects relevant to data and numerical science. Python has become a powerhouse in these fields largely due to its available libraries. Julia is fast making up this ground, with an integrated package manager and the ability to call Python libraries, we will show where the gap has already been bridged and where there is still reason to hold back. We will demonstrate that the language syntax is already as easy as the simplest specialist alternatives (eg. Matlab/Mathematica/S-Plus), but this is a fully fledged programming language, and the libraries are no longer necessarily a reason to hold back.

The Tutorial format

We will begin by introducing the basic syntax, showing the paths of least resistance for users moving from Python, Matlab and other major languages. We will quickly move-on to explain the details of how Julia is different from other scripted programming languages. Typically, these differences, such as the system of multiple dispatch, have been specifically chosen as they allow for faster runtimes from scripted code without impacting on read/writeability. Finally, we will work through some specific examples of Visualisation (Plots.jl), Data Wrangling (ie DataFrame-type options), Numerical Optimisation (JuliaOpt/JuMP.jl) and High-Performance Computing (JuliaGPU/OpenCL.jl, also profiling, benchmarking and debugging if time allows) as an introduction to some of the packages currently available in the Julia package ecosystem.

Note: this is an interactive tutorial please follow the Installation Instructions, which will be posted at https://github.com/daveh19/pydataberl... shortly before the meeting, if you wish to participate!


PyData is an educational program of NumFOCUS, a 501(c)3 non-profit organization in the United States. PyData provides a forum for the international community of users and developers of data analysis tools to share ideas and learn from each other. The global PyData network promotes discussion of best practices, new approaches, and emerging technologies for data management, processing, analytics, and visualization. PyData communities approach data science using many languages, including (but not limited to) Python, Julia, and R.

PyData conferences aim to be accessible and community-driven, with novice to advanced level presentations. PyData tutorials and talks bring attendees the latest project features along with cutting-edge use cases.

Comments are turned off
When autoplay is enabled, a suggested video will automatically play next.

Up next

to add this to Watch Later

Add to

Loading playlists...