售 价:¥
温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印
为你推荐
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
SMS and esendex
Cloud services
Introducing Amazon Web Services
The AWS.jl package
The Google Cloud
Summary
10. Working with Julia
Under the hood
Femtolisp
The Julia API
Code generation
Performance tips
Best practice
Profiling
Lint
Debugging
Developing a package
Anatomy
Taxonomy
Using Git
Publishing
Community groups
Classifications
JuliaAstro
Cosmology models
The Flexible Image Transport System
The high-level API
The low-level API
JuliaGPU
What's missing?
Summary
Index
买过这本书的人还买过
读了这本书的人还在读
同类图书排行榜