售 价:¥
温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印
为你推荐
Scientific Computing with Scala
Table of Contents
Scientific Computing with Scala
Credits
About the Author
About the Reviewer
www.PacktPub.com
eBooks, discount offers, and more
Why subscribe?
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
Downloading the color images of this book
Errata
Piracy
Questions
1. Introducing Scientific Computing with Scala
Why Scala for scientific computing?
What are the advantages compared to C/C++/Java?
What are the advantages compared to MATLAB/Python/R?
Scala does parallelism well
Any downsides?
Numerical computing packages for Scala
Scalala
Breeze
ScalaLab
Data analysis packages for Scala
Saddle
MLlib
Other scientific software
FACTORIE
Cassovary
Figaro
Alternatives for doing plotting
Using Emacs as the Scala IDE
Profiling Scala code
Debugging Scala code
Building, testing, and distributing your Scala software
Directory structure
Testing Scala code with the help of SBT
ENSIME and SBT integration
Distributing your software
Mixing Java and Scala code
Summary
2. Storing and Retrieving Data
Reading and writing CSV files
Reading files in Scala
Parsing CSV data
Processing CSV data
Reading and writing JSON files
Spray-JSON
SON of JSON
Argonaut
Reading and writing XML files
Database access using JDBC
Database access using Slick
Plain SQL
Reading and writing HDF5 files
Summary
3. Numerical Computing with Breeze
Using Breeze in your project
Basic Breeze data structures
DenseVector
DenseMatrix
Indexing and slicing
Reshaping
Concatenation
Statistical computing with Breeze
Optimization
Signal processing
Fourier transforms
Other signal processing functionality
Cheat sheet
Creating matrices and vectors
Operations on matrices and vectors
Summary
4. Using Saddle for Data Analysis
Installing Saddle
Basic Saddle data structures
Using the Vec structure
Using arithmetic operations in Vec
Data access in Vec
Implementing the slice method in Vec
Statistic calculation in Vec
Using the Mat structure
Creating a matrix with Mat
Applying arithmetic operators in Mat structures
Using Matrix in the Mat structure
Series
Implementing the groupBy method in the Series structure
Applying the transform method in Series
Using numerical operators in Series
Joining Series using the join operation
Applying index.LeftJoin
Applying index.RightJoin
Applying index.InnerJoin
Applying index.OuterJoin
Frame
Using the rowAt method in Frame
Using the sortedColsBy method in Frame
Data analysis with Saddle
Using Breeze with Saddle
Summary
5. Interactive Computing with ScalaLab
Installing and running ScalaLab
Basic ScalaSci data structures
Vector
Matrix
Other ScalaSci functionality
Data storage and retrieval
Plotting with ScalaLab
Other ScalaLab features
Doing symbolic algebra using symja
Summary
6. Parallel Programming in Scala
Programming with Scala threads
A simple Scala thread example
Synchronization
Monte-Carlo pi calculation
Using Scala's parallel collections
Agent-based concurrency with the Akka framework
Monte-Carlo pi revisited
Using routing
Waiting for a reply
Summary
7. Cluster Computing Using Scala
Using MPJ Express for distributed computing
Setting up and running MPJ Express
Using Send and Recv
Sending Scala objects in MPJ Express messages
Non-blocking communication
Scatter and Gather
Setting up MPJ Express on clusters
Using an Akka cluster for distributed computing
Summary
8. Scientific Plotting with Scala
Plotting with JFreeChart
Using JFreeChart in your project
Creating a line plot
Creating a histogram
Creating a bar chart
Creating a box-and-whisker chart
Other plot types
Saving charts to a file
Plotting with scala-chart
Installing scala-chart
Creating a line plot
Creating a histogram
Creating a bar chart
Creating a box-and-whisker chart
Saving charts to a file
Plotting with Wisp
Creating a line plot
Creating a histogram
Creating a bar chart
Creating a box-and-whisker chart
Creating a linear regression plot
Interacting with the server
Summary
9. Visualizing Multi-Dimensional Data in Scala
Obtaining data to visualize
Andrews curve
Parallel coordinates
Scatter plot matrix
Sammon mapping
Improving the program
Summary
Index
买过这本书的人还买过
读了这本书的人还在读
同类图书排行榜