Scala for data science leverage the power of Scala to build scalable, robust data science applications
Leverage the power of Scala with different tools to build scalable, robust data science applications About This Book A complete guide for scalable data science solutions, from data ingestion to data visualization Deploy horizontally scalable data processing pipelines and take advantage of web framew...
Otros Autores: | |
---|---|
Formato: | Libro electrónico |
Idioma: | Inglés |
Publicado: |
Birmingham :
Packt Publishing
2016.
|
Edición: | 1st edition |
Colección: | Community experience distilled.
|
Materias: | |
Ver en Biblioteca Universitat Ramon Llull: | https://discovery.url.edu/permalink/34CSUC_URL/1im36ta/alma991009630353706719 |
Tabla de Contenidos:
- Cover; Copyright; Credits; About the Author; About the Reviewers; www.PacktPub.com; Table of Contents; Preface; Chapter 1: Scala and Data Science; Data science; Programming in data science; Why Scala?; Static typing and type inference; Scala encourages immutability; Scala and functional programs; Null pointer uncertainty; Easier parallelism; Interoperability with Java; When not to use Scala; Summary; References; Chapter 2: Manipulating Data with Breeze; Code examples; Installing Breeze; Getting help on Breeze; Basic Breeze data types; Vectors; Dense and sparse vectors and the vector trait
- MatricesBuilding vectors and matrices; Advanced indexing and slicing; Mutating vectors and matrices; Matrix multiplication, transposition, and the orientation of vectors; Data preprocessing and feature engineering; Breeze - function optimization; Numerical derivatives; Regularization; An example - logistic regression; Towards re-usable code; Alternatives to Breeze; Summary; References; Chapter 3: Plotting with breeze-viz; Diving into Breeze; Customizing plots; Customizing the line type; More advanced scatter plots; Multi-plot example - scatterplot matrix plots; Managing without documentation
- Breeze-viz referenceData visualization beyond breeze-viz; Summary; Chapter 4: Parallel Collections and Futures; Parallel collections; Limitations of parallel collections; Error handling; Setting the parallelism level; An example - cross-validation with parallel collections; Futures; Future composition - using a future's result; Blocking until completion; Controlling parallel execution with execution contexts; Futures example - stock price fetcher; Summary; References; Chapter 5: Scala and SQL through JDBC; Interacting with JDBC; First steps with JDBC; Connecting to a database server
- Creating tablesInserting data; Reading data; JDBC summary; Functional wrappers for JDBC; Safer JDBC connections with the loan pattern; Enriching JDBC statements with the ""pimp my library"" pattern; Wrapping result sets in a stream; Looser coupling with type classes; Type classes; Coding against type classes; When to use type classes; Benefits of type classes; Creating a data access layer; Summary; References; Chapter 6: Slick - A Functional Interface for SQL; FEC data; Importing Slick; Defining the schema; Connecting to the database; Creating tables; Inserting data; Querying data; Invokers
- Operations on columnsAggregations with ""Group by""; Accessing database metadata; Slick versus JDBC; Summary; References; Chapter 7: Web APIs; A whirlwind tour of JSON; Querying web APIs; JSON in Scala - an exercise in pattern matching; JSON4S types; Extracting fields using XPath; Extraction using case classes; Concurrency and exception handling with futures; Authentication - adding HTTP headers; HTTP - a whirlwind overview; Adding headers to HTTP requests in Scala; Summary; References; Chapter 8: Scala and MongoDB; MongoDB; Connecting to MongoDB with Casbah; Connecting with authentication
- Inserting documents