Book Image

Building Data-Driven Applications with Danfo.js

By : Rising Odegua, Stephen Oni
Book Image

Building Data-Driven Applications with Danfo.js

By: Rising Odegua, Stephen Oni

Overview of this book

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.
Table of Contents (18 chapters)
1
Section 1: The Basics
3
Section 2: Data Analysis and Manipulation with Danfo.js and Dnotebook
10
Section 3: Building Data-Driven Applications

Tensors and basic operations on tensors

A tensor is a basic data structure in tfjs. You can think of tensors as a generalization of vectors, matrices, or high-dimensional arrays. The CoreAPI, which we introduced in the What is TensorFlow.js? section, exposes different functions for creating and working with tensors.

The following screenshot shows a simple comparison between scalars, vectors, and a matrix with a tensor:

Figure 10.5 – Comparison between simple n-dimensional arrays and a tensor

Tip

A matrix is a grid of m x n numbers, where m represents the number of rows and n represents the number of columns. A matrix can be of one or more dimensions, and matrixes of the same shape support direct mathematical operations on each other.

A vector, on the other hand, is a one-dimensional matrix with shape (1, 1); that is, it has a single row and column—for example, [2, 3], [3, 1, 4].

We mentioned earlier that a tensor is more of a generalized...