Skip to main content

Operators

Introduction

In Einblick, operators are distinct steps of analysis that appear as rectangles on the space you're working on. Operators perform a wide range of functions, such as importing data, transforming data, and visualizing results. Much of the power of Einblick lies in the ability to customize and combine operators as you see fit. In the image below, the Expression, Filter, and Chart operators are visible.

Each operator has its own unique functionality. In the above image, the Expression operator takes in a dataframe and adds a new column. The result of the Expression operator is then fed into the Filter operator, which removes some rows according to the specified conditions, and finally the Chart operator plots the results.

Dozens more operators are available, and new operators are continually being added. Users can also create their own custom operators, called User Operators.

Creating Operators

Operators can be added to a canvas in several ways, but the most important is through the Operators menu on the left side of a canvas, pictured below.

In this menu, all operators are grouped into categories, like Code. For example, the Expression operator used above is part of the Code category. To add an operator to the canvas, you can simply drag it from the menu onto the canvas.

There are also a few shortcuts for adding operators to a canvas. For example, you can directly drag a dataframe onto the canvas to create an operator with that dataframe as an input.

Operator Dataframe Inputs

Most operators will take one or more dataframes as input (some, such as SQL dataset, may retrieve data from elsewhere.) Dataframe inputs will appear as small circles just above an operator. An empty input will be uncolored and contain a + button, while a filled input will take on the color of its dataframe. To use a dataframe as an input to an operator, drag the dataframe onto one of the operator's inputs. In the image below are two Table operators, with the left one having an empty input, and the right one having a dataframe specified as its input.

Clicking on an empty dataframe input will allow you to select an existing dataframe to use for that input. Right-clicking a filled input will allow you to remove the specified dataframe.

Operator Dataframe Outputs

Most operators (especially those designed to transform data, like Filter) will also produce a dataframe as output. At this time, operators are limited to producing only one output dataframe. If an output dataframe is available for an operator, it will appear as a small circle underneath the operator.

Linking Operators

As soon as an output dataframe is available from an operator, it can be used as the input to subsequent operators. In this way, complex analyses can be built in an intuitive fashion by ordering operators in whatever manner you desire.

When two operators are connected in the way, they are said to be linked, and a line (or curve) connecting them, called a link, will appear. This makes it clear where data originates and how it changes throughout the canvas. Links can also be used to filter data; to read more about how to use links, visit the Links page.

Operator Option Menus

Most operators have customizable options that determine their behavior. Depending on the operator, specifying these options may be necessary before running it. These options may appear in the operator itself, or may be accessible by hovering the tabs which appear on the left-hand side of the operator. The left-side menus are commonly used when the operator visualizes its results, leaving no room for configuring options.

The image below shows two operators: Round, and Key Driver Analysis. The Round operator can be configured using the inputs directly inside the operator, and will produce an output dataframe once it's finished running. The Key Driver Analysis operator displays its results directly, so must be configured through the menus on its left-hand side. In the image, the Features menu has been opened and configured.

Running Operators

If all the necessary inputs have been configured for an operator, you can run it by clicking the blue play button at the bottom left corner of the operator. If the play button is grayed out and disabled, it means that some required inputs haven't been set.

Certain operators (typically simpler, computationally inexpensive operators) will run automatically once all their inputs have been configured appropriately. Changes to an operator's inputs can also cause it to rerun. However, an operator can always be rerun by clicking on its play button, as long as it has been configured properly.

If an operator is currently running, the play button will be replaced by a stop button. Clicking this button will stop it. You can then click the play button again at any point to run the operator again.

In the image below are three operators. The left one does not have the required input dataframe, and so cannot be run (note the greyed-out play button.) The middle one is in the process of running (note the stop button), while the left one has finished running.

Operator Errors and Failures

If an operator fails or returns an error, an error icon will appear at the bottom-right of the operator. Clicking on the icon will display the error. Some operators, like the Python cell operator, also have a console output used to display errors. An example of a failing operator, Restrict range, is shown below. The user who configured this operator tried to confine all numeric values to be above 2, but less than 1, causing the operator to display an error for invalid settings.

Operator Bottom Menu

At the bottom-left corner of an operator, directly to the right of the play button, are several icons that expose additional functionality. The available functionality depends on the specific operator. Hovering over a menu item will tell you what it does. The most important item in this menu is the options list, represented by the three-dots icon. Clicking on this icon, as shown in the following image, shows a list of options for the operator, like Delete and Duplicate.