Best Corporate Training & Consulting For Tableau, PowerBI, QlikSense, Python , Data Analytics & Data Science - ML, DL in Gurgaon

R Integration with Tableau

R Integration with Tableau

During my Corporate Tableau Training in Gurgaon , i get questions many time regarding R Integration with Tableau .

Writing “R” Scripts inside Tableau : Step by Step

1.Tableau with R

    • This blog is intended to show how to leverage R to extend Tableau capabilities and visualize outputs from R.

 

  • This is not a Tutorial on R.

 

2.What is R

    • R is an open source programming language and software environment for statistical computing and graphics

 

  • The R language is widely used among statisticians and data miners for developing statistical software and data analysis.

 

3.What is R Studio

    • RStudio is a free and open-source Integrated Development Environment (IDE) for R.

 

  • RStudio is available in two editions: RStudio Desktop, where the program is run locally as a regular desktop application; and RStudio Server, which allows accessing RStudio using a web browser while it is running on a remote Linux

 

4.Installing R & R Studio

  • Download R from the Link:

http://cran.us.r-project.org/

  • Download R Studio from the Link:

https://www.rstudio.com/products/rstudio/download/

 

5.Setting Up Tableau Desktop with R

Tableau communicates with R using a package called Rserve.

You can install and initiate Rserve from R command line by entering:
install.packages(“Rserve”);
library(Rserve);
Rserve()

 

6.Configure an Rserve Connection on Tableau

On the Help menu in Tableau Desktop choose Settings and Performance > Manage R Connection to open the Rserve connection dialog box.

 

The below screen opens up:

 

Enter or select a server name using a domain or an IP address. The drop-down list includes localhost and the server you most recently connected to.
Specify a port. Port 6311 is the default port for Rserve servers. If the server requires credentials, specify a Username and Password.
Click Test Connection. Click OK.

 

7. Pass Expressions to R

    • In order to let tableau know that the calculations need to go to R, it must be passed through one of the 4 functions.

 

    • These 4 functions are : SCRIPT_BOOL , SCRIPT_INT , SCRIPT_REAL , SCRIPT_STR

 

    • R Functions are computed as Table calculations in Tableau.

 

  • Since these are table calculations, all the Fields being passed to R must be aggregated like Sum(PROFIT), MIN(Profit), Max (Profit), ATTR( Category) etc.

8. R Functions in Tableau

 

8. Run an R script on Tableau

8a → SCRIPT_BOOL

Returns a Boolean result from the specified expression. The expression is passed directly to a running external service instance. In R expressions, use .argn (with a leading period) to reference parameters (.arg1, .arg2, etc.).

SCRIPT_BOOL(” .arg1 > 0 “, SUM([Profit]))

    • In this R example, .arg1 is equal to SUM([Profit])

 

  • All the Fields being passed to R must be aggregated like Sum(PROFIT), MIN(Profit), Max (Profit), ATTR( Category) etc..

 

8b → SCRIPT_INT

SCRIPT_INT(” .arg1 / 2 “, SUM([Profit]))
Returns an integer result from the specified expression. In this R example, .arg1 is equal to SUM([Profit])

 

8c→ SCRIPT_REAL
SCRIPT_REAL(” log(.arg1) “, SUM([Profit]))
Returns a real result from the specified expression. In this R example, .arg1 is equal to SUM([Profit])

8d → SCRIPT_STR

SCRIPT_STR(” paste(.arg1 ,.arg2)”,
attr([Category]),
attr([Sub-Category])
)
Returns a string concatenate result using “R” paste function. In this R example, .arg1 is equal to attr([Category]) SCRIPT_STR(” paste(.arg1 ,.arg2)”,
attr([Category]),
attr([Sub-Category])
)
Returns a string concatenate result using “R” paste function. In this R example, .arg1 is equal to attr([Category])


9. Share a Workbook That Requires an Rserve Connection

You may need to send a workbook that contains R functionality to other users, who may be using different copies of Tableau Desktop on other computers. Or, users may download a workbook from Tableau Server that contains R functionality. Before users will be able to use the R functionality in workbooks they have received or downloaded to Tableau Desktop, they must Configure Rserve connections on their Computers.

 

10. Publishing Workbooks with an Rserve Connection

    • Publishing a workbook with R functionality to Tableau Server requires Server to have a connection to Rserve.

 

    • If multiple users need to access Rserve simultaneously, Rserve should be installed on Linux.

 

    • Rserve on Linux, unlike Windows, handles each user independently and does not allow users to overwrite other’s objects.

 

    • Before you publish a workbook that relies on an Rserve connection to Tableau Server, you should configure Tableau Server to have its own Rserve connection.

 

    • You do this by configuring settings with tabadmin set.

 

    • The settings are equivalent to the values you set in the Rserve Connection dialog box. They are:

 

    • vizqlserver.rserve.host

 

    • vizqlserver.rserve.port

 

    • vizqlserver.rserve.username

 

    • vizqlserver.rserve.password

 

  • Note: The settings vizqlserver.rserve.username and vizqlserver.rserve.password should be omitted if Tableau Desktop connects to RServe without a username and password.

 

11. About R integration with Tableau [ As of Tableau 10.1 (April 2017)]

    • You cannot publish workbooks containing R scripts to Tableau Public.

 

    • You cannot view workbooks containing R scripts in Tableau Reader.

 

    • You cannot publish a workbook that contains R scripting to Tableau Online.

 

    • Tableau has been tested with R versions 3.1 and 3.2, and with Rserver version 0.6-8.

 

    • Tableau cannot verify that workbooks that use R will render properly on Tableau Server. There might be scenarios where a required statistical library is available on a user’s machine but not on the Rserve instance that Tableau Server is using.

 

    • For views that cannot be rendered in Tableau Server because of an R script error, you see a warning error when you publish the workbook .

 

  • Because Tableau Server provides an authentication mechanism, it can be more secure to expose Rserve functionality to users through Tableau Server than in Tableau Desktop.

Akriti Lal

Akriti Lal is a Data Analytics and Data Visualization maven with a Decade of experience in different industry verticals.She has worked extensively on data analytics & data visualization using tools like Tableau , Microsoft Power BI , Python , Microsoft SQL Server , Qlik Sense , Microsoft Power Pivot , Power Excel & Looker . Reach out at info@instrovate.com or Whatsapp / Call at +91 74289 52788

Recent Posts

PL-100T00-A: Microsoft Power Platform App Maker

3 Days ( 24 Hrs ) Instructor-led trainingIntermediateEnglish We wil be providing you Microsoft Official Course…

3 years ago

MB-910T00: Microsoft Certified: Dynamics 365 Fundamentals (CRM)

2 DaysInstructor-led trainingBeginnerEnglish Skills gained Describe the capabilities and functionality of Dynamics 365 MarketingDescribe the…

3 years ago

PL-400T00-A: Microsoft Power Platform Developer

5 Days ( 40 Hrs ) Instructor-led trainingIntermediateEnglish We wil be providing you Microsoft Official Course…

3 years ago

PL-200T00: Microsoft Power Platform Functional Consultant

5 Days ( 40 Hrs ) Instructor-led trainingIntermediateEnglish We wil be providing you Microsoft Official…

3 years ago

PL-900T00: Microsoft Power Platform Fundamentals

2 DaysInstructor-led trainingBeginnerEnglish Prerequisites No prerequisites for this course Skills gained Describe Microsoft Power Platform…

3 years ago

Power Platform Training – 3 Days – Power Apps , Power Automate Flows , Power Virtual Agents

Course Content Day-1: Power Platform Introduction Power Platform Introduction.Components of Power PlatformConnectors, Triggers & ActionsOverview…

3 years ago