Cargando…

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...

Descripción completa

Detalles Bibliográficos
Clasificación:Libro Electrónico
Autor principal: Bugnion, Pascal (Autor)
Formato: Electrónico eBook
Idioma:Inglés
Publicado: Birmingham, UK : Packt Publishing, 2016.
Colección:Community experience distilled.
Temas:
Acceso en línea:Texto completo (Requiere registro previo con correo institucional)
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