Mastering Julia
eBook - ePub

Mastering Julia

Malcolm Sherrington

Condividi libro
  1. 410 pagine
  2. English
  3. ePUB (disponibile sull'app)
  4. Disponibile su iOS e Android
eBook - ePub

Mastering Julia

Malcolm Sherrington

Dettagli del libro
Anteprima del libro
Indice dei contenuti
Citazioni

Informazioni sul libro

This hands-on guide is aimed at practitioners of data science. The book assumes some previous skills with Julia and skills in coding in a scripting language such as Python or R, or a compiled language such as C or Java.

Domande frequenti

Come faccio ad annullare l'abbonamento?
È semplicissimo: basta accedere alla sezione Account nelle Impostazioni e cliccare su "Annulla abbonamento". Dopo la cancellazione, l'abbonamento rimarrà attivo per il periodo rimanente già pagato. Per maggiori informazioni, clicca qui
È possibile scaricare libri? Se sì, come?
Al momento è possibile scaricare tramite l'app tutti i nostri libri ePub mobile-friendly. Anche la maggior parte dei nostri PDF è scaricabile e stiamo lavorando per rendere disponibile quanto prima il download di tutti gli altri file. Per maggiori informazioni, clicca qui
Che differenza c'è tra i piani?
Entrambi i piani ti danno accesso illimitato alla libreria e a tutte le funzionalità di Perlego. Le uniche differenze sono il prezzo e il periodo di abbonamento: con il piano annuale risparmierai circa il 30% rispetto a 12 rate con quello mensile.
Cos'è Perlego?
Perlego è un servizio di abbonamento a testi accademici, che ti permette di accedere a un'intera libreria online a un prezzo inferiore rispetto a quello che pagheresti per acquistare un singolo libro al mese. Con oltre 1 milione di testi suddivisi in più di 1.000 categorie, troverai sicuramente ciò che fa per te! Per maggiori informazioni, clicca qui.
Perlego supporta la sintesi vocale?
Cerca l'icona Sintesi vocale nel prossimo libro che leggerai per verificare se è possibile riprodurre l'audio. Questo strumento permette di leggere il testo a voce alta, evidenziandolo man mano che la lettura procede. Puoi aumentare o diminuire la velocità della sintesi vocale, oppure sospendere la riproduzione. Per maggiori informazioni, clicca qui.
Mastering Julia è disponibile online in formato PDF/ePub?
Sì, puoi accedere a Mastering Julia di Malcolm Sherrington in formato PDF e/o ePub, così come ad altri libri molto apprezzati nelle sezioni relative a Computer Science e Systems Architecture. Scopri oltre 1 milione di libri disponibili nel nostro catalogo.

Informazioni

Anno
2015
ISBN
9781783553310
Edizione
1

Mastering Julia


Table of Contents

Mastering Julia
Credits
About the Author
About the Reviewers
www.PacktPub.com
Support files, eBooks, discount offers, and more
Why subscribe?
Free access for Packt account holders
Preface
What this book covers
What you need for this book
Who this book is for
Conventions
Reader feedback
Customer support
Downloading the example code
Errata
Piracy
Questions
1. The Julia Environment
Introduction
Philosophy
Role in data science and big data
Comparison with other languages
Features
Getting started
Julia sources
Building from source
Installing on CentOS
Mac OS X and Windows
Exploring the source stack
Juno
IJulia
A quick look at some Julia
Julia via the console
Installing some packages
A bit of graphics creating more realistic graphics with Winston
My benchmarks
Package management
Listing, adding, and removing
Choosing and exploring packages
Statistics and mathematics
Data visualization
Web and networking
Database and specialist packages
How to uninstall Julia
Adding an unregistered package
What makes Julia special
Parallel processing
Multiple dispatch
Homoiconic macros
Interlanguage cooperation
Summary
2. Developing in Julia
Integers, bits, bytes, and bools
Integers
Logical and arithmetic operators
Booleans
Arrays
Operations on matrices
Elemental operations
A simple Markov chain – cat and mouse
Char and strings
Characters
Strings
Unicode support
Regular expressions
Byte array literals
Version literals
An example
Real, complex, and rational numbers
Reals
Operators and built-in functions
Special values
BigFloats
Rationals
Complex numbers
Juliasets
Composite types
More about matrices
Vectorized and devectorized code
Multidimensional arrays
Broadcasting
Sparse matrices
Data arrays and data frames
Dictionaries, sets, and others
Dictionaries
Sets
Other data structures
Summary
3. Types and Dispatch
Functions
First-class objects
Passing arguments
Default and optional arguments
Variable argument list
Named parameters
Scope
The Queen's problem
Julia's type system
A look at the rational type
A vehicle datatype
Typealias and unions
Enumerations (revisited)
Multiple dispatch
Parametric types
Conversion and promotion
Conversion
Promotion
A fixed vector module
Summary
4. Interoperability
Interfacing with other programming environments
Calling C and Fortran
Mapping C types
Array conversions
Type correspondences
Calling a Fortran routine
Calling curl to retrieve a web page
Python
Some others to watch
The Julia API
Calling API from C
Metaprogramming
Symbols
Macros
Testing
Error handling
The enum macro
Tasks
Parallel operations
Distributed arrays
A simple MapReduce
Executing commands
Running commands
Working with the filesystem
Redirection and pipes
Perl one-liners
Summary
5. Working with Data
Basic I/O
Terminal I/O
Disk files
Text processing
Binary files
Structured datasets
CSV and DLM files
HDF5
XML files
DataFrames and RDatasets
The DataFrames package
DataFrames
RDatasets
Subsetting, sorting, and joining data
Statistics
Simple statistics
Samples and estimations
Pandas
Selected topics
Time series
Distributions
Kernel density
Hypothesis testing
GLM
Summary
6. Scientific Programming
Linear algebra
Simultaneous equations
Decompositions
Eigenvalues and eigenvectors
Special matrices
A symmetric eigenproblem
Signal processing
Frequency analysis
Filtering and smoothing
Digital signal filters
Image processing
Differential equations
The solution of ordinary differential equations
Non-linear ordinary differential equations
Partial differential equations
Optimization problems
JuMP
Optim
NLopt
Using with the MathProgBase interface
Stochastic problems
Stochastic simulations
SimJulia
Bank teller example
Bayesian methods and Markov processes
Monte Carlo Markov Chains
MCMC frameworks
Summary
7. Graphics
Basic graphics in Julia
Text plotting
Cairo
Winston
Data visualization
Gadfly
Compose
Graphic engines
PyPlot
Gaston
PGF plots
Using the Web
Bokeh
Plotly
Raster graphics
Cairo (revisited)
Winston (revisited)
Images and ImageView
Summary
8. Databases
A basic view of databases
The red pill or the blue pill?
Interfacing to databases
Other considerations
Relational databases
Building and loading
Native interfaces
ODBC
Other interfacing techniques
DBI
SQLite
MySQL
PostgreSQL
PyCall
JDBC
NoSQL datastores
Key-value systems
Document datastores
RESTful interfacing
JSON
Web-based databases
Graphic systems
Summary
9. Networking
Sockets and servers
Well-known ports
UDP and TCP sockets in Julia
A "Looking-Glass World" echo server
Named pipes
Working with the Web
A TCP web service
The JuliaWeb group
The "quotes" server
WebSockets
Messaging...

Indice dei contenuti