30
Visual programming for R Anup Parikh ([email protected] ) Kyle Covington ([email protected] )

Visual programming for R · Visual programming for R Anup Parikh ([email protected]) Kyle Covington ([email protected])

  • Upload
    lytuyen

  • View
    228

  • Download
    1

Embed Size (px)

Citation preview

Page 2: Visual programming for R · Visual programming for R Anup Parikh (anup@red-r.org) Kyle Covington (kyle@red-r.org)

University of Amsterdam Informatics Institute

Page 3: Visual programming for R · Visual programming for R Anup Parikh (anup@red-r.org) Kyle Covington (kyle@red-r.org)

Red-R Motivation

• Hide the code complexity and improve readability

• Create a more interactive platform for data exploration

• Improve data and analysis sharing between users

• Provide a community repository of analysis pipelines

Page 4: Visual programming for R · Visual programming for R Anup Parikh (anup@red-r.org) Kyle Covington (kyle@red-r.org)

Architecture

Page 5: Visual programming for R · Visual programming for R Anup Parikh (anup@red-r.org) Kyle Covington (kyle@red-r.org)

Red-R Motivation

• Hide the code complexity and improve readability

• Create a more interactive platform for data exploration

• Improve data and analysis sharing between users

• Provide a community repository of analysis pipelines

Page 6: Visual programming for R · Visual programming for R Anup Parikh (anup@red-r.org) Kyle Covington (kyle@red-r.org)

Visual Programming

• Visual programming interface

– Analysis is performed by linking a series of widgets together

• Widgets correspond to R function

– Read, manipulate or visualize data

Page 7: Visual programming for R · Visual programming for R Anup Parikh (anup@red-r.org) Kyle Covington (kyle@red-r.org)

R vs. Red-R

Page 8: Visual programming for R · Visual programming for R Anup Parikh (anup@red-r.org) Kyle Covington (kyle@red-r.org)

Canvas

All Widget

WidgetSuggestions

Red-R Overview

Widget

Page 9: Visual programming for R · Visual programming for R Anup Parikh (anup@red-r.org) Kyle Covington (kyle@red-r.org)

Widget

Page 10: Visual programming for R · Visual programming for R Anup Parikh (anup@red-r.org) Kyle Covington (kyle@red-r.org)

Widget

Page 11: Visual programming for R · Visual programming for R Anup Parikh (anup@red-r.org) Kyle Covington (kyle@red-r.org)

Widget

Help

Notes

R code

Page 12: Visual programming for R · Visual programming for R Anup Parikh (anup@red-r.org) Kyle Covington (kyle@red-r.org)

Red-R Motivation

• Hide the code complexity and improve readability

• Create a more interactive platform for data exploration

• Improve data and analysis sharing between users

• Provide a community repository of analysis pipelines

Page 13: Visual programming for R · Visual programming for R Anup Parikh (anup@red-r.org) Kyle Covington (kyle@red-r.org)

Creating a Workflow

Page 14: Visual programming for R · Visual programming for R Anup Parikh (anup@red-r.org) Kyle Covington (kyle@red-r.org)

Interactive Widgets

Page 15: Visual programming for R · Visual programming for R Anup Parikh (anup@red-r.org) Kyle Covington (kyle@red-r.org)

Interactive Workflows

Page 16: Visual programming for R · Visual programming for R Anup Parikh (anup@red-r.org) Kyle Covington (kyle@red-r.org)

Red-R Motivation

• Hide the code complexity and improve readability

• Create a more interactive platform for data exploration

• Improve data and analysis sharing between users

• Provide a community repository of analysis pipelines

Page 17: Visual programming for R · Visual programming for R Anup Parikh (anup@red-r.org) Kyle Covington (kyle@red-r.org)

R

Data Sharing

Page 18: Visual programming for R · Visual programming for R Anup Parikh (anup@red-r.org) Kyle Covington (kyle@red-r.org)

One Shareable File

WorkflowParameters

OutputsNotes

R

Data Sharing

Page 19: Visual programming for R · Visual programming for R Anup Parikh (anup@red-r.org) Kyle Covington (kyle@red-r.org)

Import Existing R Sessions

Page 20: Visual programming for R · Visual programming for R Anup Parikh (anup@red-r.org) Kyle Covington (kyle@red-r.org)

Red-R Motivation

• Hide the code complexity and improve readability

• Create a more interactive platform for data exploration

• Improve data and analysis sharing between users

• Provide a community repository of analysis pipelines

Page 21: Visual programming for R · Visual programming for R Anup Parikh (anup@red-r.org) Kyle Covington (kyle@red-r.org)

Community Repository: Packages

Page 22: Visual programming for R · Visual programming for R Anup Parikh (anup@red-r.org) Kyle Covington (kyle@red-r.org)

Community Repository: Templates

Page 23: Visual programming for R · Visual programming for R Anup Parikh (anup@red-r.org) Kyle Covington (kyle@red-r.org)

Community Repository: Templates

Page 24: Visual programming for R · Visual programming for R Anup Parikh (anup@red-r.org) Kyle Covington (kyle@red-r.org)

Current Functionality

Base R functionality

• Read/View Data

• Subsetting– Merge/Intersect/Filter

• Manipulations– Math/Apply

• Plotting– Interactive Scatter Plot

– Most R plots

• Stats– Parametric

– Non-Parametric

Additional R packages

• Bioconductor microarray analysis

• Survival analysis

• Spatial Stats

• SQLite

• ROCR – ROC Curves

• Neural Nets

• LME4

Page 25: Visual programming for R · Visual programming for R Anup Parikh (anup@red-r.org) Kyle Covington (kyle@red-r.org)

Expanding Functionality

• How do you make it easier to transition from R to Red-R?

Page 26: Visual programming for R · Visual programming for R Anup Parikh (anup@red-r.org) Kyle Covington (kyle@red-r.org)

Expanding Functionality

• How do you make it easier to transition from R to Red-R?

Page 27: Visual programming for R · Visual programming for R Anup Parikh (anup@red-r.org) Kyle Covington (kyle@red-r.org)

Expanding Functionality

• How do you make it easier to transition from R to Red-R?

Page 28: Visual programming for R · Visual programming for R Anup Parikh (anup@red-r.org) Kyle Covington (kyle@red-r.org)

Highlights

• Reduced learning curve for access to R functionality

• Analysis methods easier to read and understand and share

– Hopefully leads to analysis reproducibility

• Increase productivity with interactivity

Page 29: Visual programming for R · Visual programming for R Anup Parikh (anup@red-r.org) Kyle Covington (kyle@red-r.org)

http://www.red-r.org

Page 30: Visual programming for R · Visual programming for R Anup Parikh (anup@red-r.org) Kyle Covington (kyle@red-r.org)