Continuum Analytics: Documentation

# User guide

Anaconda Fusion is a side pane interface that works inside Excel. Fusion lets users select functions available through namespaces that we call notebooks, since they match notebooks generated in Jupyter notebooks.

Fusion also lets users define datasets and variables from the Excel spreadsheet to be used as inputs for the functions to run.

## Basic Anaconda Fusion workflow

Two types of users will interact with Anaconda Fusion: the Data Scientist (notebook author) and the Business Analyst (Excel user). The User guide is targeted to the Business Analyst and the Data scientist guide to the Data Scientist.

The basic workflow that Anaconda Fusion supports is the following:

1. A Data Scientist writes a notebook with reusable functions. The functions use the @fusion.register() decorator. The Data Scientist can control the inputs and outputs of the functions. The inputs can be open to data from Excel or a list of options. The outputs can be data or visualizations.
2. The Data Scientist shares the notebook with the Business Analyst. The notebook can be shared uploading it to Anaconda Cloud or Anaconda Repository.
3. The Business Analyst uploads the notebook to Anaconda Fusion. The Business Analyst opens Anaconda Fusion in Microsoft Excel, selects ‘Notebooks’ and clicks ‘Add New Notebook’. The Jupyter window opens and the user sees an Upload button. By selecting the notebook they have just downloaded it and uploading it to Jupyter, now Anaconda Fusion will list it under codesheet.
4. The Business Analyst runs the function. By clicking in ‘Notebooks’ to the notebook just uploaded, the Business Analyst can select from the function menu and select the values in the Input section.

## Load a notebook

To load a notebook to run, from the top navigation bar, click Notebooks. From the list that appears, select the notebooks that you would like to load, for example, clustering.ipynb:

NOTE: Anaconda Fusion includes default examples of notebooks that come with the installation, but you can also add custom notebooks. For more information, see Upload a notebook to Anaconda Fusion below.

After you have selected a notebook Fusion loads a view of that notebook that shows all the functions available in that notebook, as well as the variables to input for each of those functions:

## Access data from Excel

Fusion makes it easy to access data though either the top menu or by entering the Excel data address directly.

- Access data from the top menu data where you can define datasets to be used and referenced anytime during function executions (like Excel named ranges):

  There are three ways to define data to input to Anaconda Fusion:

  - 1. Selection: Use the current selected cell or cells as the input
  - 2. Range or Cell: Define an Excel range or cell as the input (this may be a Named Range, that is, an already defined Excel variable)
  - 3. Python: Use a Python expression to use as the input.

  Click your desired input mechanism, for example “Range or Cell”. Then fill the fields with the desired name for the input and the Excel range address:

  You can also view all the data that you have defined by clicking ‘See All’:

  By clicking a data input, you can also view the current values:

- Access data by entering the Excel data address directly in the function’s input selection boxes as shown in this example:

NOTE: Avoid defining data with names closely related to Excel expressions, such as ‘J1’. This can cause Anaconda Fusion to break or behave unexpectedly, because Fusion’s code conversion will try to convert the range J1 from the current spreadsheet.

NOTE: Data in Anaconda Fusion is stored with the corresponding spreadsheet where it was defined. If there is no corresponding spreadsheet file, for example, when a user starts a new and unsaved Excel ‘Workbook’, defined data will be stored in a global namespace. This means all spreadsheets will have access to that data, although it will be referenced to that specific spreadsheet. Otherwise, defined data will only be visible and accessible within the spreadsheet where it was originally defined.

## Access the function documentation

Authors of functions can write documentation to help users understand the function’s purpose, how it works and how to specify the input parameters and configure the function.

If the author has provided it, users can access this help documentation through the process execution UI by clicking in the i information icon in the right side of the function select box:

NOTE: The automatic UI generation is a very powerful feature of Anaconda Fusion to let Excel users consume high level functions created inside notebooks. This feature represents a huge step forward lowering the barrier for Excel users to use advanced functions written in languages, like Python, that otherwise would have been accessible only by writing code.

See the Data scientist guide for more information about authoring.

## Run a function with Anaconda Fusion

After selecting a function, Anaconda Fusion shows all the parameters that users will need to input to be able to execute such functions, as shown in the figure immediately above.

The function parameter select boxes display the available data to be used for a specific parameter. That’s why, for instance, some parameters may list all the data defined from Excel spreadsheets, while others may list numbers or a specific set of strings specified by the author of the function.

You can see how this works by opening the sample `clustering` codesheet that is installed by default with Fusion, and looking at the `clustering` function. The `data` argument of this function lists all the data declared from the Excel spreadsheet, the `algorithm` displays a list of possible algorithm names that can be used and the `n_clusters` argument lists numbers that can be used to define the number of clusters to find.

After all the input parameters have been filled, you can execute the function by clicking on the “RUN” button. After it finishes running, the output is loaded into the Excel spreadsheet or in the Fusion output area, if it’s a plot or image or has been configured otherwise.

SEE More information about how to specify custom output actions below in Customize execution outputs.

In the following paragraphs we’ll go more into the details of the using the Anaconda Fusion process execution UI.

## Configure your run

There are two run configuration options in the main Anaconda Fusion screen:

- Excel Sync: When Excel Sync is enabled, Fusion automatically reads changes in Excel into the Fusion input data, and automatically writes the Fusion output data into Excel. When Excel Sync is disabled Fusion will not read data from Excel or write data to Excel, and clicking Run will run the Fusion code on data that was previously read from Excel.
- Auto run: When Auto run is enabled users do not need to click Run every time they change the input data and want to re-run the Fusion code. When Auto run is enabled, Fusion re-runs the Fusion code whenever either (1) you select a different input from the Fusion dropdown menus or (2) Excel Sync is enabled and you change the input data in Excel.

NOTE: Data read from Excel to Fusion with the “Range and Cell” option will be kept in sync but data read with the “Selection” option will not be kept in sync.

## Customize execution outputs

You can configure the default output mechanism back to Excel, as well as export the output once to a defined Excel location.

- Options: Define the default output option when user clicks Run.
- Export: Define setting for a one time export mechanism. Click Export to export the data.

The output options are the same as the input ones described above in Access data from Excel.

## Upload a notebook to Anaconda Fusion

### Uploading in Anaconda Fusion

If someone has shared a notebook with you that you want to upload to Anaconda Fusion, drag the files into the upload box and click ‘Upload’:

Or instead, click in the upload box, select the file and click ‘Upload’:

You can now see the uploaded notebook in the list of notebooks in Anaconda Fusion.

### Uploading with Jupyter

If someone has shared a notebook with you that you want to upload to Anaconda Fusion, select ‘Notebooks’ and click ‘Add new notebook’:

The Jupyter notebook interface starts.

Click ‘Upload’, browse your folders to find the notebook you’d like to upload to Anaconda Fusion, and click ‘Upload’:

You can now see the uploaded notebook in the list of notebooks in Anaconda Fusion.