accelerate your advanced analytics - #tc18 · 2020-01-06 · accelerate your advanced analytics r,...

51

Upload: others

Post on 03-Aug-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Accelerate Your Advanced Analytics - #TC18 · 2020-01-06 · Accelerate Your Advanced Analytics R, Python & MATLAB #TC18 Erik Polano Associate Solution Architect Tableau Erwin van
Page 2: Accelerate Your Advanced Analytics - #TC18 · 2020-01-06 · Accelerate Your Advanced Analytics R, Python & MATLAB #TC18 Erik Polano Associate Solution Architect Tableau Erwin van

Accelerate Your Advanced AnalyticsR, Python & MATLAB

# T C 1 8

Erik Polano

Associate Solution Architect

Tableau

Erwin van Laar

Team Lead, Product Consultancy

Tableau

Page 3: Accelerate Your Advanced Analytics - #TC18 · 2020-01-06 · Accelerate Your Advanced Analytics R, Python & MATLAB #TC18 Erik Polano Associate Solution Architect Tableau Erwin van

Session Overview

Page 4: Accelerate Your Advanced Analytics - #TC18 · 2020-01-06 · Accelerate Your Advanced Analytics R, Python & MATLAB #TC18 Erik Polano Associate Solution Architect Tableau Erwin van

Agenda

Tableau’s Built in Analytics

External Services Connection

Live Calculations

Materialized Calculations

Summary

Page 5: Accelerate Your Advanced Analytics - #TC18 · 2020-01-06 · Accelerate Your Advanced Analytics R, Python & MATLAB #TC18 Erik Polano Associate Solution Architect Tableau Erwin van

Introduction

Page 6: Accelerate Your Advanced Analytics - #TC18 · 2020-01-06 · Accelerate Your Advanced Analytics R, Python & MATLAB #TC18 Erik Polano Associate Solution Architect Tableau Erwin van

Erwin van LaarTeam Lead, Product Consultancy, Tableau

Erik PolanoAssociate Solution Architect, Tableau

Page 7: Accelerate Your Advanced Analytics - #TC18 · 2020-01-06 · Accelerate Your Advanced Analytics R, Python & MATLAB #TC18 Erik Polano Associate Solution Architect Tableau Erwin van

Objective

Create interactive dashboards…

Without the consumer needing to understand code…

That enables them to answer questions…

That are not contained in the underlying data source

Page 8: Accelerate Your Advanced Analytics - #TC18 · 2020-01-06 · Accelerate Your Advanced Analytics R, Python & MATLAB #TC18 Erik Polano Associate Solution Architect Tableau Erwin van

Built in Analytics in Tableau

Row level calculations

Page 9: Accelerate Your Advanced Analytics - #TC18 · 2020-01-06 · Accelerate Your Advanced Analytics R, Python & MATLAB #TC18 Erik Polano Associate Solution Architect Tableau Erwin van

Built in Analytics in Tableau

Row level calculations

Aggregated Calculations

Page 10: Accelerate Your Advanced Analytics - #TC18 · 2020-01-06 · Accelerate Your Advanced Analytics R, Python & MATLAB #TC18 Erik Polano Associate Solution Architect Tableau Erwin van

Built in Analytics in Tableau

Row level calculations

Aggregated CalculationsLevel of Detail expressions

Page 11: Accelerate Your Advanced Analytics - #TC18 · 2020-01-06 · Accelerate Your Advanced Analytics R, Python & MATLAB #TC18 Erik Polano Associate Solution Architect Tableau Erwin van

Built in Analytics in Tableau

Row level calculations

Aggregated CalculationsLevel of Detail expressions

Table Calculations

Page 12: Accelerate Your Advanced Analytics - #TC18 · 2020-01-06 · Accelerate Your Advanced Analytics R, Python & MATLAB #TC18 Erik Polano Associate Solution Architect Tableau Erwin van

Table Calculations

Based on the Level of Aggregation in the View

Page 13: Accelerate Your Advanced Analytics - #TC18 · 2020-01-06 · Accelerate Your Advanced Analytics R, Python & MATLAB #TC18 Erik Polano Associate Solution Architect Tableau Erwin van

Built in Analytics in Tableau

Row level calculations

Aggregated CalculationsLevel of Detail expressions

Table Calculations

Analytics Objects (ref lines, trend lines, forecast, clusters)

Page 14: Accelerate Your Advanced Analytics - #TC18 · 2020-01-06 · Accelerate Your Advanced Analytics R, Python & MATLAB #TC18 Erik Polano Associate Solution Architect Tableau Erwin van

Analytic Objects

Drag & Drop Analytical features

Page 15: Accelerate Your Advanced Analytics - #TC18 · 2020-01-06 · Accelerate Your Advanced Analytics R, Python & MATLAB #TC18 Erik Polano Associate Solution Architect Tableau Erwin van

Analytic Objects

Drag & Drop Analytical features

Page 16: Accelerate Your Advanced Analytics - #TC18 · 2020-01-06 · Accelerate Your Advanced Analytics R, Python & MATLAB #TC18 Erik Polano Associate Solution Architect Tableau Erwin van

But what if I want more?

Different Model than Standard Tableau Functions

More complex models

Models trained on your data

Need more flexibility

External Services

Page 17: Accelerate Your Advanced Analytics - #TC18 · 2020-01-06 · Accelerate Your Advanced Analytics R, Python & MATLAB #TC18 Erik Polano Associate Solution Architect Tableau Erwin van

Objective

Create interactive dashboards…

Without the consumer needing to understand code…

That enables them to answer questions…

That are not contained in the underlying data source…

By leveraging an Advanced Analytical Language

Page 18: Accelerate Your Advanced Analytics - #TC18 · 2020-01-06 · Accelerate Your Advanced Analytics R, Python & MATLAB #TC18 Erik Polano Associate Solution Architect Tableau Erwin van

External Services

Page 19: Accelerate Your Advanced Analytics - #TC18 · 2020-01-06 · Accelerate Your Advanced Analytics R, Python & MATLAB #TC18 Erik Polano Associate Solution Architect Tableau Erwin van

External Services Connection

R (8.1+)

Python (10.1+)

MATLAB (10.4+)

Page 20: Accelerate Your Advanced Analytics - #TC18 · 2020-01-06 · Accelerate Your Advanced Analytics R, Python & MATLAB #TC18 Erik Polano Associate Solution Architect Tableau Erwin van

SCRIPT functions

SCRIPT_BOOL

SCRIPT_INT

SCRIPT_REAL

SCRIPT _STR

Script defines the type of outcome that Tableau expects

They will be run as a Table Calculation

Page 21: Accelerate Your Advanced Analytics - #TC18 · 2020-01-06 · Accelerate Your Advanced Analytics R, Python & MATLAB #TC18 Erik Polano Associate Solution Architect Tableau Erwin van

Example

SCRIPT_REAL("library(CausalImpact);df <- data.frame(y=.arg1,x1=.arg2,x2=.arg3);NW <- nrow(df);post.period <- c((NW/2)+1, NW);pre.period <- c(1,NW/2);impact <- CausalImpact(df, pre.period, post.period);impact$series$point.pred",SUM([Profit]), SUM([Quantity]), SUM([Sales]))

Page 22: Accelerate Your Advanced Analytics - #TC18 · 2020-01-06 · Accelerate Your Advanced Analytics R, Python & MATLAB #TC18 Erik Polano Associate Solution Architect Tableau Erwin van

Manage External Services Connection

Page 23: Accelerate Your Advanced Analytics - #TC18 · 2020-01-06 · Accelerate Your Advanced Analytics R, Python & MATLAB #TC18 Erik Polano Associate Solution Architect Tableau Erwin van

Connecting Tableau to an External Service

Tableau Desktop /

Tableau Server

Data Sources

Data

External ServicesRServe, TabPy, MATLAB

Production Server

Input Data +

SCRIPT_

Input Data +

SCRIPT_

Result Data Result Data

Page 24: Accelerate Your Advanced Analytics - #TC18 · 2020-01-06 · Accelerate Your Advanced Analytics R, Python & MATLAB #TC18 Erik Polano Associate Solution Architect Tableau Erwin van

R (matey!)

Page 25: Accelerate Your Advanced Analytics - #TC18 · 2020-01-06 · Accelerate Your Advanced Analytics R, Python & MATLAB #TC18 Erik Polano Associate Solution Architect Tableau Erwin van

R - RServe

TCP/IP server

Allows other programs to use facilities of R

Tableau Desktop /

Tableau Server

RServe

Page 26: Accelerate Your Advanced Analytics - #TC18 · 2020-01-06 · Accelerate Your Advanced Analytics R, Python & MATLAB #TC18 Erik Polano Associate Solution Architect Tableau Erwin van

Examples

• Tableau helps you see visually identify patterns in Data

• But are those patterns significantly different?

→ T-Test

Page 27: Accelerate Your Advanced Analytics - #TC18 · 2020-01-06 · Accelerate Your Advanced Analytics R, Python & MATLAB #TC18 Erik Polano Associate Solution Architect Tableau Erwin van

Python

Page 28: Accelerate Your Advanced Analytics - #TC18 · 2020-01-06 · Accelerate Your Advanced Analytics R, Python & MATLAB #TC18 Erik Polano Associate Solution Architect Tableau Erwin van

Python Set Up

numpy (1.11.2)

pandas (0.19.1)

scikit-learn (0.17.1)

scipy (0.18.1)

textblob (0.11.1)

nltk (3.2.1)

vaderSentiment (0.5)

geopy (1.11.0)

requests (2.12.4)

reverse_geocoder (1.5.1)

Tableau Python Server (TabPy)

Tableau Desktop /

Tableau Server

TabPy

Page 29: Accelerate Your Advanced Analytics - #TC18 · 2020-01-06 · Accelerate Your Advanced Analytics R, Python & MATLAB #TC18 Erik Polano Associate Solution Architect Tableau Erwin van

Example

Twitter Sentiment Analysis

Page 30: Accelerate Your Advanced Analytics - #TC18 · 2020-01-06 · Accelerate Your Advanced Analytics R, Python & MATLAB #TC18 Erik Polano Associate Solution Architect Tableau Erwin van

MATLAB

Page 31: Accelerate Your Advanced Analytics - #TC18 · 2020-01-06 · Accelerate Your Advanced Analytics R, Python & MATLAB #TC18 Erik Polano Associate Solution Architect Tableau Erwin van

Two different options

MATLAB allows to connect to models in two different ways:

External Service Connection

Web Data Connector

Page 32: Accelerate Your Advanced Analytics - #TC18 · 2020-01-06 · Accelerate Your Advanced Analytics R, Python & MATLAB #TC18 Erik Polano Associate Solution Architect Tableau Erwin van

Option 1: External Service Connection

Define Functions in MATLAB Production Server

Call Functions through Calculated Fields

Possible to filter and re-run calculations on different levels of aggregation.

Advantage: Flexibility.

Page 33: Accelerate Your Advanced Analytics - #TC18 · 2020-01-06 · Accelerate Your Advanced Analytics R, Python & MATLAB #TC18 Erik Polano Associate Solution Architect Tableau Erwin van

Option 2: Web Data Connector

Request Data Source at Initial Data Source Stage

Request sent once to MATLAB and all results written on row level into extract

Advantage: Performance

Advantage: All data can be used regardless of aggregation level

Tableau

Page 34: Accelerate Your Advanced Analytics - #TC18 · 2020-01-06 · Accelerate Your Advanced Analytics R, Python & MATLAB #TC18 Erik Polano Associate Solution Architect Tableau Erwin van

Example

Shortest Salesperson Route

Page 35: Accelerate Your Advanced Analytics - #TC18 · 2020-01-06 · Accelerate Your Advanced Analytics R, Python & MATLAB #TC18 Erik Polano Associate Solution Architect Tableau Erwin van

Materialized Calculations

Page 36: Accelerate Your Advanced Analytics - #TC18 · 2020-01-06 · Accelerate Your Advanced Analytics R, Python & MATLAB #TC18 Erik Polano Associate Solution Architect Tableau Erwin van

Categorization

Twitter sentiment analysis

Customer Identification

Reclassification

Row-level calculations

Page 37: Accelerate Your Advanced Analytics - #TC18 · 2020-01-06 · Accelerate Your Advanced Analytics R, Python & MATLAB #TC18 Erik Polano Associate Solution Architect Tableau Erwin van

Large volumes - Example

• ABN AMRO Clearing• Marleen Meier, Quantitative Risk Analyst

• Clear and finance > 16 Mio trades per day

• Model: Correlation Haircut Model (COH)

• Used on all asset-classes• Equity, Commodity, Fixed Income, Currency

Page 38: Accelerate Your Advanced Analytics - #TC18 · 2020-01-06 · Accelerate Your Advanced Analytics R, Python & MATLAB #TC18 Erik Polano Associate Solution Architect Tableau Erwin van

Tableau made our Machine Learning Project a Success

Brian Doelkahar

Head of Quantative Modelling ABN AMRO Clearing

Page 39: Accelerate Your Advanced Analytics - #TC18 · 2020-01-06 · Accelerate Your Advanced Analytics R, Python & MATLAB #TC18 Erik Polano Associate Solution Architect Tableau Erwin van

Questions?

Page 40: Accelerate Your Advanced Analytics - #TC18 · 2020-01-06 · Accelerate Your Advanced Analytics R, Python & MATLAB #TC18 Erik Polano Associate Solution Architect Tableau Erwin van

Summary

Page 41: Accelerate Your Advanced Analytics - #TC18 · 2020-01-06 · Accelerate Your Advanced Analytics R, Python & MATLAB #TC18 Erik Polano Associate Solution Architect Tableau Erwin van

What do External Services bring to Tableau?

Deeper Statistics

Machine Learning

Productionalize Predictive Modeling

More Expressive Power

Page 42: Accelerate Your Advanced Analytics - #TC18 · 2020-01-06 · Accelerate Your Advanced Analytics R, Python & MATLAB #TC18 Erik Polano Associate Solution Architect Tableau Erwin van

What does Tableau bring to External Services?

Data Connectivity

Explore at the Speed of Thought

Interactive Visual Storytelling

Page 43: Accelerate Your Advanced Analytics - #TC18 · 2020-01-06 · Accelerate Your Advanced Analytics R, Python & MATLAB #TC18 Erik Polano Associate Solution Architect Tableau Erwin van

Conclusion

Page 44: Accelerate Your Advanced Analytics - #TC18 · 2020-01-06 · Accelerate Your Advanced Analytics R, Python & MATLAB #TC18 Erik Polano Associate Solution Architect Tableau Erwin van

Advanced Analytics at Scale

R E L AT E D S E S S I O N S

Wed | 3:30pm – 4:30pm | MCCNO – L2 – New Orleans Theater C

Tableau + Python = ❤Wed | 1:45pm – 2:45pm | MCCNO - L2 - 220

Page 45: Accelerate Your Advanced Analytics - #TC18 · 2020-01-06 · Accelerate Your Advanced Analytics R, Python & MATLAB #TC18 Erik Polano Associate Solution Architect Tableau Erwin van

Advanced Analytics at Scale

R E L AT E D S E S S I O N S

R…you ready? Jedi stats with R & TableauWed | 10:15am – 12:45pm | MCCNO – L3 – 356

Wed | 3:30pm – 4:30pm | MCCNO – L2 – New Orleans Theater C

Page 46: Accelerate Your Advanced Analytics - #TC18 · 2020-01-06 · Accelerate Your Advanced Analytics R, Python & MATLAB #TC18 Erik Polano Associate Solution Architect Tableau Erwin van

Embedding Tableau for self-service data science

R E L AT E D S E S S I O N S

Wed | 12:00pm – 1:00pm | MCCNO – L2 – La Nouvelle Ballroom B

Data science applications with TabPy/R

Wed | 12:00pm – 1:00pm | MCCNO – L2 – New Orleans Theater B

Page 47: Accelerate Your Advanced Analytics - #TC18 · 2020-01-06 · Accelerate Your Advanced Analytics R, Python & MATLAB #TC18 Erik Polano Associate Solution Architect Tableau Erwin van

Accelerate Your Advanced AnalyticsR, Python & MATLAB

S E S S I O N R E P E AT S

Wed | 10:45am – 11:45am | MCCNO – L2 – La Nouvelle Ballroom B

Page 48: Accelerate Your Advanced Analytics - #TC18 · 2020-01-06 · Accelerate Your Advanced Analytics R, Python & MATLAB #TC18 Erik Polano Associate Solution Architect Tableau Erwin van

Please complete the

session survey from the

Session Details screen

in your TC18 app

Page 49: Accelerate Your Advanced Analytics - #TC18 · 2020-01-06 · Accelerate Your Advanced Analytics R, Python & MATLAB #TC18 Erik Polano Associate Solution Architect Tableau Erwin van

Thank you!Erik Polano

[email protected]

Erwin van Laar

[email protected]

Page 50: Accelerate Your Advanced Analytics - #TC18 · 2020-01-06 · Accelerate Your Advanced Analytics R, Python & MATLAB #TC18 Erik Polano Associate Solution Architect Tableau Erwin van

Resources

• How Tableau Brought ABN AMRO’s Machine Learning Project to Life• https://www.youtube.com/watch?v=mFpvf1brgN4&t=20s

• Alteryx Analytic Templates for Tableau• https://pages.alteryx.com/starter-kit-Tableau-

FNO.html?_ga=2.233432348.38610897.1535546581-1457225964.1534502381

Page 51: Accelerate Your Advanced Analytics - #TC18 · 2020-01-06 · Accelerate Your Advanced Analytics R, Python & MATLAB #TC18 Erik Polano Associate Solution Architect Tableau Erwin van