๐”– Scriptorium
โœฆ   LIBER   โœฆ

๐Ÿ“

Building Data-Driven Applications with Danfo.js: A practical guide to data analysis and machine learning using JavaScript

โœ Scribed by Rising Odegua, Stephen Oni


Publisher
Packt Publishing
Year
2021
Tongue
English
Leaves
477
Category
Library

โฌ‡  Acquire This Volume

No coin nor oath required. For personal study only.

โœฆ Synopsis


Get hands-on with building data-driven applications using Danfo.js in combination with other data analysis tools and techniques

Key Features

  • Build microservices to perform data transformation and ML model serving in JavaScript
  • Explore what Danfo.js is and how it helps with data analysis and data visualization
  • Combine Danfo.js and TensorFlow.js for machine learning

Book Description

Most data analysts use Python and pandas for data processing for the convenience and performance these libraries provide. However, JavaScript developers have always wanted to use machine learning in the browser as well. This book focuses on how Danfo.js brings data processing, analysis, and ML tools to JavaScript developers and how to make the most of this library to build data-driven applications.

Starting with an overview of modern JavaScript, you'll cover data analysis and transformation with Danfo.js and Dnotebook. The book then shows you how to load different datasets, combine and analyze them by performing operations such as handling missing values and string manipulations. You'll also get to grips with data plotting, visualization, aggregation, and group operations by combining Danfo.js with Plotly. As you advance, you'll create a no-code data analysis and handling system and create-react-app, react-table, react-chart, Draggable.js, and tailwindcss, and understand how to use TensorFlow.js and Danfo.js to build a recommendation system. Finally, you'll build a Twitter analytics dashboard powered by Danfo.js, Next.js, node-nlp, and Twit.js.

By the end of this app development book, you'll be able to build and embed data analytics, visualization, and ML capabilities into any JavaScript app in server-side Node.js or the browser.

What you will learn

  • Perform data experimentation and analysis with Danfo.js and Dnotebook
  • Build machine learning applications using Danfo.js integrated with TensorFlow.js
  • Connect Danfo.js with popular database applications to aid data analysis
  • Create a no-code data analysis and handling system using internal libraries
  • Develop a recommendation system with Danfo.js and TensorFlow.js
  • Build a Twitter analytics dashboard for sentiment analysis and other types of data insights

Who this book is for

This book is for data analysts, data scientists, and JavaScript developers who want to create data-driven applications in the JavaScript/Node.js environment. Intermediate-level knowledge of JavaScript programming and data science using pandas is expected.

Table of Contents

  1. An Overview of Modern JavaScript
  2. Dnotebook - An Interactive Computing Environment for JavaScript
  3. Getting Started with Danfo.js
  4. Data Analysis, Wrangling, and Transformation
  5. Data Visualization with Plotly.js
  6. Data Visualization with Danfo.js
  7. Data Aggregation and Group Operations
  8. Creating a No-Code Data Analysis/Handling System
  9. Basics of Machine Learning
  10. Introduction to TensorFlow.js
  11. Building a Recommendation System with Danfo.js and TensorFlow.js
  12. Building a Twitter Analysis Dashboard
  13. Appendix: Essential JavaScript Concepts

โœฆ Table of Contents


Cover
Title Page
Copyright and Credits
Preface
Section 1: The Basics
Chapter 1: An Overview of Modern JavaScript
Technical requirements
Understanding the difference between let and var
var allows the redeclaration of variables
var is not a blocked scope
Destructuring
Spread syntax
Spreading or unpacking an iterable into an array
Creating new objects from existing ones
Function arguments
Overview of scopes and closures
Scope
Closure
Understanding Array and Object methods
Array methods
Objects
Understanding the this property
Arrow functions
Promises and async/await
Cleaning callbacks with promises
async/await
Object-oriented programming and JavaScript classes
Classes
Inheritance
Setting up a modern JavaScript environment with transpilers
Babel
Webpack
Unit testing with Mocha and Chai
Setting up a test environment
Summary
Section 2: Data Analysis and Manipulation with Danfo.js and Dnotebook
Chapter 2: Dnotebook - An Interactive Computing Environment for JavaScript
Technical requirements
Introduction to Dnotebook
Setup and installation of Dnotebook
Basic concepts behind interactive computing in Dnotebook
Cells
Code cells
Markdown cells
Persistence/state
Writing interactive code
Loading external packages
Loading CSV files
Getting a div container for plots
Gotchas when using a for loop
Working with Markdown cells
Creating a Markdown cell
Adding images
Headings
Lists
Saving notebooks
Summary
Chapter 3: Getting Started with Danfo.js
Technical requirements
Why you need Danfo.js
Installing Danfo.js
Introducing Series and DataFrames
Series
DataFrames
Essential functions and methods in Danfo.js
loc and iloc indexing
Sorting
Filtering
Arithmetic operations
Logical operations
Data loading and working with different file formats
Transforming a DataFrame into another file format
Summary
Chapter 4: Data Analysis, Wrangling, and Transformation
Technical requirements
Transforming data
Replacing missing values
Removing duplicates
Data transformation with the map function
Data transformation with the apply function
Filtering and querying
Random sampling
Encoding DataFrames and Series
Combining datasets
DataFrame merge
Data concatenation
Series data accessors
Calculating statistics
Calculating statistics by axis
Summary
Chapter 5: Data Visualization with Plotly.js
Technical requirements
A brief primer on Plotly.js
Using Plotly.js via a script tag
Fundamentals of Plotly.js
Data format
Configuration options for plots
Plotly layout
Creating basic charts with Plotly.js
Creating statistical charts with Plotly.js
Creating histogram plots with Plotly.js
Creating box plots with Plotly.js
Creating violin plots with Plotly.js
Summary
Chapter 6: Data Visualization with Danfo.js
Technical requirements
Setting up Danfo.js for plotting
Adding Danfo.js to your code
Downloading a dataset for plotting
Creating line charts with Danfo.js
Creating scatter plots with Danfo.js
Creating box and violin plots with Danfo.js
Making box and violin plots for a Series
Box and violin plots for multiple columns
Box and violin plots with specific x and y values
Creating histograms with Danfo.js
Creating a histogram from a Series
Creating a histogram from multiple columns
Creating bar charts with Danfo.js
Creating a bar chart from a Series
Creating a bar chart from multiple columns
Summary
Chapter 7: Data Aggregation and Group Operations
Technical requirements
Grouping data
Single-column grouping
Double-column grouping
Iterating through grouped data
Iterating through single- and double-column grouped data
Using the .apply method
Data aggregation of grouped data
Data aggregation on single-column grouping
Data aggregation on double-column grouping
A simple application of groupby on real data
Summary
Section 3: Building Data-Driven Applications
Chapter 8: Creating a No-Code Data Analysis/Handling System
Technical requirements
Setting up the project environment
Structuring and designing the app
App layout and the DataTable component
Implementing DataTable components
File upload and state management
Creating different DataFrame operation components
Implementing the Describe component
Implementing the Query component
Implementing the Df2df component
Implementing the Arithmetic component
Implementing the chart component
Implementing the ChartPlane component
Implementing the ChartViz component
Integrating ChartViz and ChartPlane into App.js
Summary
Chapter 9: Basics of Machine Learning
Technical requirements
Introduction to machine learning
A simple analogy of a machine learning system
Why machine learning works
Objective functions
Evaluation metrics
Machine learning problems/tasks
Supervised learning
Unsupervised learning
Machine learning in JavaScript
Applications of machine learning
Resources to understand machine learning in depth
Summary
Chapter 10: Introduction to TensorFlow.js
Technical requirements
What is TensorFlow.js?
Installing and using TensorFlow.js
Setting up TensorFlow.js in the browser
Installing TensorFlow.js in Node.js
Tensors and basic operations on tensors
Creating tensors
Operating on tensors
Building a simple regression model with TensorFlow.js
Setting up your environment locally
Retrieving and processing the training dataset
Creating models with TensorFlow.js
Creating a simple three-layer regression model
Training the model with the processed dataset
Making predictions with the trained model
Summary
Chapter 11: Building a Recommendation System with Danfo.js and TensorFlow.js
Technical requirements
What is a recommendation system?
Collaborative filtering approach
Hybrid filtering approach
The neural network approach to creating a recommendation system
Building a movie recommendation system
Setting up your project directory
Retrieving and processing the training dataset
Building the recommendation model
Training and saving the recommendation model
Making movie recommendations with the saved model
Summary
Chapter 12: Building a Twitter Analysis Dashboard
Technical requirements
Setting up the project environment
Building the backend
Building the Twitter API
Building the text sentiment API
Building the frontend
Creating the Search component
Creating the ValueCounts component
Creating a plot component for sentiment analysis
Creating a Table component
Summary
Chapter 13: Appendix: Essential JavaScript Concepts
Technical requirements
Quick overview of JavaScript
Understanding the fundamentals of JavaScript
Declaring variables
Data types
Conditional branching and loops
JavaScript functions
Summary
Other Books You May Enjoy
Index


๐Ÿ“œ SIMILAR VOLUMES


Building Data-Driven Applications with D
โœ Rising Odegua, Stephen Oni ๐Ÿ“‚ Library ๐Ÿ“… 2021 ๐Ÿ› Packt Publishing ๐ŸŒ English

<p><b>Get hands-on with building data-driven applications using Danfo.js in combination with other data analysis tools and techniques</b></p><h4>Key Features</h4><ul><li>Build microservices to perform data transformation and ML model serving in JavaScript</li><li>Explore what Danfo.js is and how it

Machine learning with Spark: create scal
โœ Pentreath, Nick ๐Ÿ“‚ Library ๐Ÿ“… 2015 ๐Ÿ› Packt Publishing Ltd ๐ŸŒ English

Getting up and running with Spark -- Designing a machine learning system -- Obtaining, processing, and preparing data with Spark -- Building a recommendation engine with Spark -- Building a classification model with Spark -- Building a regression model with Spark -- Building a clustering model with

Machine learning with Spark: create scal
โœ Pentreath, Nick ๐Ÿ“‚ Library ๐Ÿ“… 2015 ๐Ÿ› Packt Publishing Ltd ๐ŸŒ English

Getting up and running with Spark -- Designing a machine learning system -- Obtaining, processing, and preparing data with Spark -- Building a recommendation engine with Spark -- Building a classification model with Spark -- Building a regression model with Spark -- Building a clustering model with

Machine learning with Spark: create scal
โœ Pentreath, Nick ๐Ÿ“‚ Library ๐Ÿ“… 2015 ๐Ÿ› Packt Publishing Ltd ๐ŸŒ English

Getting up and running with Spark -- Designing a machine learning system -- Obtaining, processing, and preparing data with Spark -- Building a recommendation engine with Spark -- Building a classification model with Spark -- Building a regression model with Spark -- Building a clustering model with

Machine Learning with Spark: Create scal
โœ Nick Pentreath ๐Ÿ“‚ Library ๐Ÿ“… 2015 ๐Ÿ› Packt Publishing ๐ŸŒ English

Apache Spark is a framework for distributed computing that is designed from the ground up to be optimized for low latency tasks and in-memory data storage. It is one of the few frameworks for parallel computing that combines speed, scalability, in-memory processing, and fault tolerance with ease of

Building Data-Driven Applications with L
โœ Andrei Gheorghiu ๐Ÿ“‚ Library ๐Ÿ“… 2024 ๐Ÿ› Packt Publishing ๐ŸŒ English

Solve real-world problems easily with artificial intelligence (AI) using the LlamaIndex data framework to enhance your LLM-based Python applications Key Features โ€ข Examine text chunking effects on RAG workflows and understand security in RAG app development โ€ข Discover chatbots and agents and le