SlideShare a Scribd company logo
Shiny Web Application for
SRAdb
Olivia Zhang
8/13/2015
Thomas Jefferson High School for Science and
Technology
NCI Summer Intern
ShinySRAdb Web application
Overview:
o User interface for SRAdb package
o Programmed using “Shiny Apps” package in R
o Easier way to query, view, and interact with SRA data
Installation:
o Full Instructions and program files at
https://github.com/oliviazz/SRAdb-app
o R commands for usage:
• Install.packages(“devtools”) and library(devtools)
• install_github('seandavi/SRAdb-app’)
• Library(ShinySRAdb)
• ShinySRAdb() to launch
Shiny Applications
• R Package for creating Web Applications
• Server.R and Ui.R files
o Server.R file runs R Session
o UI File provides HTML-based user interface
• Dynamic, responsive data outputs
• Shiny App Structure:
o UI file contains design elements, input widgets (text input, checkboxes)
o Server file collects user input through widgets IDs
o Server uses input to return unique output objects (data tables, plots) to the
UI file
Widget in UI
Defining table output in server
SRAdb Application Structure
• Workflow Design
o Search Function & Operation Function
o Enter Search Terms > Filter Results > Perform Operations on Results
1) Search Results
• SRAdb function “getSRA” performs full-text search across entire SQLite
database and returns datatable of results
o Compatible with advanced search options, *, “”, OR
• User input for search terms and data type accepted as arguments
o text input (id “searchTerms”) and select input widgets (id “dataType”)
UIServer
2) Filtering Results
• Users may need a way to narrow down results from a broad full text search
o Achieved through DT Package and user input as SRAdb function arguments
Sort results by value of a selected
column (i.e. by most recent date)
Select SRA Data TypeSpecify value for specific column
Search within results
3) DT Package for formatting and filtering:
• DT: R Package for Data Table customization
o Shiny methods masked
• Data table customized using DT Packages’s built-in extensions and options
o Customizations included in Server File when defining tableOutput
4) “Isolate” Functions
Shiny reactive outputs regenerates automatically when dependency inputs change
o Search Results would be regenerated w/ each letter typed
Outputs isolated to save unnecessary function calls
• Only defined inputs trigger responses (i.e. button click)
• ObserveEvent code is also only triggered by a certain event
• Use in App:
o Search Result table not regenerated unless search button pressed
o Operation function not performed unless action button pressed
5) Performing Operations
• Operations performed for selected rows
o Click to select rows
o Choose an operation from dropdown menu
o SRAdb functions that accept accessions as arguments
• Accessions parsed from selected rows (input$tableName_rows_selected)
5) Performing Operations (cont).
• Each choice in input widget returns different string value to server
o Switch statement to perform correct function based on string value
• Related Accession Codes → listSRAFile()
• Export Selected → Download Handler
• Get FASTQ info → getFASTQInfo()
• Get SRA info → getSRAInfo()
• FASTQ Dump → fastqDump()
• Display Entity Graph → sraGraph()
6) Operation Examples
• Get SRA Info
o Accession codes and SRA FTP Download Link, size, upload date
• Get FASTQ Info
o Accession codes and FASTQ FTP Download Link, file size, upload date
6) Operation Examples (cont.)
Display Entity Relationship Graph
o Parses accession from the row
selected
o SRAConvert() used to find all
related accessions
o sraGraph() graphs accessions
appropriately
o Helpful for visualizing data
relationships
Get Related Accession Codes
o Returns the run, experiment,
study, sample, and submission
accessions associated with
selected row
6) Operation Examples (cont.)
• Export Selected Rows
o Used Shiny Download button & handler
• File name: Defined used search terms
entered and date
• Contents: Selected rows of search result
table written into .csv file
• Export Full SRA
o Same process, with full SRA table as file content
(all columns)
6) Operation Examples (cont.)
• FASTQ Dump File
o Implementation of NCBI SRA Toolkit’s ‘FASTQ Dump’ function in R language
o Options panel automatically pops up if “FASTQ Dump” operation chosen
o Download FASTQ files for a specific run
o Specify FASTQ options, output format, download location, and more
• Arguments in “fastqDump()” method
7) Additional Features
• Alerts
o Alerts generated using ShinyBS
Package
o “if Statements” to catch errors
o Prevents data mismatches for
operations, empty result cases, etc.
• Progress Bar
• Indicate if app is loading
• Used Shiny::progress to initiate, closes
on function exit
• Let User know what program is doing
Workflow Examples
Find Information on Studies of Human Breast Cancer:
o Search “Breast Cancer”, View -> Study
o Search within results “human”
o Use column selection tool to show only desired data
fields
o Choose selected rows and export as .csv file OR
o Click “Print” button and edit print setup accordingly
Workflow Examples
Get FASTQ Files for a run related to Thyroid Cancer:
o Search Studies > “Thyroid Cancer”
o Select a row > “Get related accessions”
o Search run Accession code, data Type = “run”
o Select a Row > “Perform FASTQ Dump”
o Configure FASTQ Options, “Submit”
o Open Download Directory to view file
Conclusion
• Web application provides a simple user interface for the
SRAdb package
o Users can query SRA broadly or specifically
o Users can download SRA/FASTQ files, perform FASTQ dumps, view
entity relationship graphs, convert data types, export results, and
more
o SRA usage simplified through Graphic view of SRA and SRAdb
functions
• Application Code at: https://github.com/oliviazz/SRAdb-
app
Dr. Sean Davis
Dr. Jack Zhu
Dr. Josh Waterfall
Members of Dr. Meltzer’s Lab
Acknowledgements

More Related Content

What's hot

Asp objects
Asp objectsAsp objects
Asp objects
RajaRajeswari22
 
Angular 5 presentation for beginners
Angular 5 presentation for beginnersAngular 5 presentation for beginners
Angular 5 presentation for beginners
Imran Qasim
 
How to build integrated, professional enterprise-grade cross-platform mobile ...
How to build integrated, professional enterprise-grade cross-platform mobile ...How to build integrated, professional enterprise-grade cross-platform mobile ...
How to build integrated, professional enterprise-grade cross-platform mobile ...
Appear
 
Angular Introduction By Surekha Gadkari
Angular Introduction By Surekha GadkariAngular Introduction By Surekha Gadkari
Angular Introduction By Surekha Gadkari
Surekha Gadkari
 
jQuery plugins & JSON
jQuery plugins & JSONjQuery plugins & JSON
Mvc by asp.net development company in india - part 2
Mvc by asp.net development company in india  - part 2Mvc by asp.net development company in india  - part 2
Mvc by asp.net development company in india - part 2
iFour Institute - Sustainable Learning
 
Lyudmila Zharova: Developing Solutions for SharePoint 2010 Using the Client O...
Lyudmila Zharova: Developing Solutions for SharePoint 2010 Using the Client O...Lyudmila Zharova: Developing Solutions for SharePoint 2010 Using the Client O...
Lyudmila Zharova: Developing Solutions for SharePoint 2010 Using the Client O...SharePoint Saturday NY
 
React-Native Lecture 11: In App Storage
React-Native Lecture 11: In App StorageReact-Native Lecture 11: In App Storage
React-Native Lecture 11: In App Storage
Kobkrit Viriyayudhakorn
 
SharePoint 2010 Client-side Object Model
SharePoint 2010 Client-side Object ModelSharePoint 2010 Client-side Object Model
SharePoint 2010 Client-side Object ModelPhil Wicklund
 
How To Structure Go Applications - Paul Bellamy - Codemotion Milan 2016
How To Structure Go Applications - Paul Bellamy - Codemotion Milan 2016How To Structure Go Applications - Paul Bellamy - Codemotion Milan 2016
How To Structure Go Applications - Paul Bellamy - Codemotion Milan 2016
Codemotion
 
Android dev tips
Android dev tipsAndroid dev tips
Android dev tips
Kanda Runapongsa Saikaew
 
SharePoint 2010 Client Object Model
SharePoint 2010 Client Object ModelSharePoint 2010 Client Object Model
SharePoint 2010 Client Object Model
G. Scott Singleton
 
Introduction to the integral framework
Introduction to the integral frameworkIntroduction to the integral framework
Introduction to the integral framework
Karthik Subramanian
 
Introduction to the INTEGRAL FRAMEWORK
Introduction to the INTEGRAL FRAMEWORKIntroduction to the INTEGRAL FRAMEWORK
Introduction to the INTEGRAL FRAMEWORKKarthik Subramanian
 
Vizwik part 3 data
Vizwik part 3 dataVizwik part 3 data
Vizwik part 3 data
Vizwik
 
React App State Management with react hooks and context api
React App State Management with react hooks and context apiReact App State Management with react hooks and context api
React App State Management with react hooks and context api
Jan Ranostaj
 
Lecture 3 - ES6 Script Advanced for React-Native
Lecture 3 - ES6 Script Advanced for React-NativeLecture 3 - ES6 Script Advanced for React-Native
Lecture 3 - ES6 Script Advanced for React-Native
Kobkrit Viriyayudhakorn
 
RBC Mod 1: Making a New Rails App
RBC Mod 1: Making a New Rails AppRBC Mod 1: Making a New Rails App
RBC Mod 1: Making a New Rails App
ameedahc
 

What's hot (20)

ASP.NET - Web Programming
ASP.NET - Web ProgrammingASP.NET - Web Programming
ASP.NET - Web Programming
 
Asp objects
Asp objectsAsp objects
Asp objects
 
Angular 5 presentation for beginners
Angular 5 presentation for beginnersAngular 5 presentation for beginners
Angular 5 presentation for beginners
 
How to build integrated, professional enterprise-grade cross-platform mobile ...
How to build integrated, professional enterprise-grade cross-platform mobile ...How to build integrated, professional enterprise-grade cross-platform mobile ...
How to build integrated, professional enterprise-grade cross-platform mobile ...
 
Angular Introduction By Surekha Gadkari
Angular Introduction By Surekha GadkariAngular Introduction By Surekha Gadkari
Angular Introduction By Surekha Gadkari
 
jQuery plugins & JSON
jQuery plugins & JSONjQuery plugins & JSON
jQuery plugins & JSON
 
Mvc by asp.net development company in india - part 2
Mvc by asp.net development company in india  - part 2Mvc by asp.net development company in india  - part 2
Mvc by asp.net development company in india - part 2
 
Asp
AspAsp
Asp
 
Lyudmila Zharova: Developing Solutions for SharePoint 2010 Using the Client O...
Lyudmila Zharova: Developing Solutions for SharePoint 2010 Using the Client O...Lyudmila Zharova: Developing Solutions for SharePoint 2010 Using the Client O...
Lyudmila Zharova: Developing Solutions for SharePoint 2010 Using the Client O...
 
React-Native Lecture 11: In App Storage
React-Native Lecture 11: In App StorageReact-Native Lecture 11: In App Storage
React-Native Lecture 11: In App Storage
 
SharePoint 2010 Client-side Object Model
SharePoint 2010 Client-side Object ModelSharePoint 2010 Client-side Object Model
SharePoint 2010 Client-side Object Model
 
How To Structure Go Applications - Paul Bellamy - Codemotion Milan 2016
How To Structure Go Applications - Paul Bellamy - Codemotion Milan 2016How To Structure Go Applications - Paul Bellamy - Codemotion Milan 2016
How To Structure Go Applications - Paul Bellamy - Codemotion Milan 2016
 
Android dev tips
Android dev tipsAndroid dev tips
Android dev tips
 
SharePoint 2010 Client Object Model
SharePoint 2010 Client Object ModelSharePoint 2010 Client Object Model
SharePoint 2010 Client Object Model
 
Introduction to the integral framework
Introduction to the integral frameworkIntroduction to the integral framework
Introduction to the integral framework
 
Introduction to the INTEGRAL FRAMEWORK
Introduction to the INTEGRAL FRAMEWORKIntroduction to the INTEGRAL FRAMEWORK
Introduction to the INTEGRAL FRAMEWORK
 
Vizwik part 3 data
Vizwik part 3 dataVizwik part 3 data
Vizwik part 3 data
 
React App State Management with react hooks and context api
React App State Management with react hooks and context apiReact App State Management with react hooks and context api
React App State Management with react hooks and context api
 
Lecture 3 - ES6 Script Advanced for React-Native
Lecture 3 - ES6 Script Advanced for React-NativeLecture 3 - ES6 Script Advanced for React-Native
Lecture 3 - ES6 Script Advanced for React-Native
 
RBC Mod 1: Making a New Rails App
RBC Mod 1: Making a New Rails AppRBC Mod 1: Making a New Rails App
RBC Mod 1: Making a New Rails App
 

Viewers also liked

Introduction to R
Introduction to RIntroduction to R
Introduction to R
Sean Davis
 
2016 07 12_purdue_bigdatainomics_seandavis
2016 07 12_purdue_bigdatainomics_seandavis2016 07 12_purdue_bigdatainomics_seandavis
2016 07 12_purdue_bigdatainomics_seandavis
Sean Davis
 
Prototyping with R shiny: Video and Quiz Analysis in MOOCs
Prototyping with R shiny: Video and Quiz Analysis in MOOCsPrototyping with R shiny: Video and Quiz Analysis in MOOCs
Prototyping with R shiny: Video and Quiz Analysis in MOOCs
TimVogelsang
 
ಅಲ್ಲಾಹನು ಆತನನ್ನು ಸ್ವರ್ಗಪ್ರವೆಶಗೊಳಿಸುವುದು ಖಚಿತವಾಯಿತು
ಅಲ್ಲಾಹನು ಆತನನ್ನು ಸ್ವರ್ಗಪ್ರವೆಶಗೊಳಿಸುವುದು  ಖಚಿತವಾಯಿತುಅಲ್ಲಾಹನು ಆತನನ್ನು ಸ್ವರ್ಗಪ್ರವೆಶಗೊಳಿಸುವುದು  ಖಚಿತವಾಯಿತು
ಅಲ್ಲಾಹನು ಆತನನ್ನು ಸ್ವರ್ಗಪ್ರವೆಶಗೊಳಿಸುವುದು ಖಚಿತವಾಯಿತುFAHIM AKTHAR ULLAL
 
Presentation1.PPTX
Presentation1.PPTXPresentation1.PPTX
Presentation1.PPTX
jameschloejames
 
20111219 folien webinar
20111219 folien webinar20111219 folien webinar
20111219 folien webinarbfnd
 
Etihad Guest Workshop 2014
Etihad Guest Workshop 2014Etihad Guest Workshop 2014
Etihad Guest Workshop 2014Asif Ali
 
Holler Trends Presentation 2012
Holler Trends Presentation 2012Holler Trends Presentation 2012
Holler Trends Presentation 2012
Gual Barwell
 
EXPERIENCE CERTIFICATE -7
EXPERIENCE CERTIFICATE -7EXPERIENCE CERTIFICATE -7
EXPERIENCE CERTIFICATE -7Nagaraj Ballal
 
SC-013-S/C/NR-2013
SC-013-S/C/NR-2013SC-013-S/C/NR-2013
Encontro Capixaba de Empresas Juniores 2016
Encontro Capixaba de Empresas Juniores 2016Encontro Capixaba de Empresas Juniores 2016
Encontro Capixaba de Empresas Juniores 2016
Renzo Colnago
 
SRAdb Bioconductor Package Overview
SRAdb Bioconductor Package OverviewSRAdb Bioconductor Package Overview
SRAdb Bioconductor Package Overview
Sean Davis
 
R shiny
R shinyR shiny
R shiny
Ellen Boylen
 
Prezentacja starszy brat 2016
Prezentacja starszy  brat 2016Prezentacja starszy  brat 2016
Prezentacja starszy brat 2016
mowkamionekwielki
 
6 - Beauty Silks - Accountant Certificate
6 - Beauty Silks - Accountant Certificate6 - Beauty Silks - Accountant Certificate
6 - Beauty Silks - Accountant CertificateMOHAMMED SHAHIK E.P
 
Developing R Graphical User Interfaces
Developing R Graphical User InterfacesDeveloping R Graphical User Interfaces
Developing R Graphical User Interfaces
Setia Pramana
 

Viewers also liked (18)

Introduction to R
Introduction to RIntroduction to R
Introduction to R
 
2016 07 12_purdue_bigdatainomics_seandavis
2016 07 12_purdue_bigdatainomics_seandavis2016 07 12_purdue_bigdatainomics_seandavis
2016 07 12_purdue_bigdatainomics_seandavis
 
Prototyping with R shiny: Video and Quiz Analysis in MOOCs
Prototyping with R shiny: Video and Quiz Analysis in MOOCsPrototyping with R shiny: Video and Quiz Analysis in MOOCs
Prototyping with R shiny: Video and Quiz Analysis in MOOCs
 
ಅಲ್ಲಾಹನು ಆತನನ್ನು ಸ್ವರ್ಗಪ್ರವೆಶಗೊಳಿಸುವುದು ಖಚಿತವಾಯಿತು
ಅಲ್ಲಾಹನು ಆತನನ್ನು ಸ್ವರ್ಗಪ್ರವೆಶಗೊಳಿಸುವುದು  ಖಚಿತವಾಯಿತುಅಲ್ಲಾಹನು ಆತನನ್ನು ಸ್ವರ್ಗಪ್ರವೆಶಗೊಳಿಸುವುದು  ಖಚಿತವಾಯಿತು
ಅಲ್ಲಾಹನು ಆತನನ್ನು ಸ್ವರ್ಗಪ್ರವೆಶಗೊಳಿಸುವುದು ಖಚಿತವಾಯಿತು
 
Trabalho 8 ano
Trabalho 8 anoTrabalho 8 ano
Trabalho 8 ano
 
Presentation1.PPTX
Presentation1.PPTXPresentation1.PPTX
Presentation1.PPTX
 
20111219 folien webinar
20111219 folien webinar20111219 folien webinar
20111219 folien webinar
 
Etihad Guest Workshop 2014
Etihad Guest Workshop 2014Etihad Guest Workshop 2014
Etihad Guest Workshop 2014
 
Holler Trends Presentation 2012
Holler Trends Presentation 2012Holler Trends Presentation 2012
Holler Trends Presentation 2012
 
EXPERIENCE CERTIFICATE -7
EXPERIENCE CERTIFICATE -7EXPERIENCE CERTIFICATE -7
EXPERIENCE CERTIFICATE -7
 
SC-013-S/C/NR-2013
SC-013-S/C/NR-2013SC-013-S/C/NR-2013
SC-013-S/C/NR-2013
 
Mms e ranzani
Mms e ranzaniMms e ranzani
Mms e ranzani
 
Encontro Capixaba de Empresas Juniores 2016
Encontro Capixaba de Empresas Juniores 2016Encontro Capixaba de Empresas Juniores 2016
Encontro Capixaba de Empresas Juniores 2016
 
SRAdb Bioconductor Package Overview
SRAdb Bioconductor Package OverviewSRAdb Bioconductor Package Overview
SRAdb Bioconductor Package Overview
 
R shiny
R shinyR shiny
R shiny
 
Prezentacja starszy brat 2016
Prezentacja starszy  brat 2016Prezentacja starszy  brat 2016
Prezentacja starszy brat 2016
 
6 - Beauty Silks - Accountant Certificate
6 - Beauty Silks - Accountant Certificate6 - Beauty Silks - Accountant Certificate
6 - Beauty Silks - Accountant Certificate
 
Developing R Graphical User Interfaces
Developing R Graphical User InterfacesDeveloping R Graphical User Interfaces
Developing R Graphical User Interfaces
 

Similar to ShinySRAdb: an R package using shiny to wrap the SRAdb Bioconductor package

Utilizing the open ntf domino api
Utilizing the open ntf domino apiUtilizing the open ntf domino api
Utilizing the open ntf domino api
Oliver Busse
 
Utilizing the OpenNTF Domino API
Utilizing the OpenNTF Domino APIUtilizing the OpenNTF Domino API
Utilizing the OpenNTF Domino API
Oliver Busse
 
SPTechCon 2014 How to develop and debug client side code in SharePoint
SPTechCon 2014 How to develop and debug client side code in SharePointSPTechCon 2014 How to develop and debug client side code in SharePoint
SPTechCon 2014 How to develop and debug client side code in SharePoint
Mark Rackley
 
Using Search API, Search API Solr and Facets in Drupal 8
Using Search API, Search API Solr and Facets in Drupal 8Using Search API, Search API Solr and Facets in Drupal 8
Using Search API, Search API Solr and Facets in Drupal 8
Websolutions Agency
 
Utilizing the OpenNTF Domino API
Utilizing the OpenNTF Domino APIUtilizing the OpenNTF Domino API
Utilizing the OpenNTF Domino API
Oliver Busse
 
DanNotes 2013: OpenNTF Domino API
DanNotes 2013: OpenNTF Domino APIDanNotes 2013: OpenNTF Domino API
DanNotes 2013: OpenNTF Domino API
Paul Withers
 
My Saminar On Php
My Saminar On PhpMy Saminar On Php
My Saminar On Php
Arjun Kumawat
 
Using existing language skillsets to create large-scale, cloud-based analytics
Using existing language skillsets to create large-scale, cloud-based analyticsUsing existing language skillsets to create large-scale, cloud-based analytics
Using existing language skillsets to create large-scale, cloud-based analytics
Microsoft Tech Community
 
Rapid API Development ArangoDB Foxx
Rapid API Development ArangoDB FoxxRapid API Development ArangoDB Foxx
Rapid API Development ArangoDB FoxxMichael Hackstein
 
zMSC Lab.pdf
zMSC Lab.pdfzMSC Lab.pdf
zMSC Lab.pdf
Marna Walle
 
Practices and tools for building better APIs
Practices and tools for building better APIsPractices and tools for building better APIs
Practices and tools for building better APIsNLJUG
 
Practices and tools for building better API (JFall 2013)
Practices and tools for building better API (JFall 2013)Practices and tools for building better API (JFall 2013)
Practices and tools for building better API (JFall 2013)
Peter Hendriks
 
Apache Calcite (a tutorial given at BOSS '21)
Apache Calcite (a tutorial given at BOSS '21)Apache Calcite (a tutorial given at BOSS '21)
Apache Calcite (a tutorial given at BOSS '21)
Julian Hyde
 
Content migration for sitecore
Content migration for sitecoreContent migration for sitecore
Content migration for sitecore
Surendra Sharma
 
QTP Online Training
QTP Online TrainingQTP Online Training
QTP Online Training
QualityPoint Technologies
 
Oracle applications r12.2, ebr, online patching means lot of work for devel...
Oracle applications r12.2, ebr, online patching   means lot of work for devel...Oracle applications r12.2, ebr, online patching   means lot of work for devel...
Oracle applications r12.2, ebr, online patching means lot of work for devel...
Ajith Narayanan
 
Reproducibility and automation of machine learning process
Reproducibility and automation of machine learning processReproducibility and automation of machine learning process
Reproducibility and automation of machine learning process
Denis Dus
 
New Features in JDK 8
New Features in JDK 8New Features in JDK 8
New Features in JDK 8
Martin Toshev
 
WSO2Con ASIA 2016: WSO2 Analytics Platform: The One Stop Shop for All Your Da...
WSO2Con ASIA 2016: WSO2 Analytics Platform: The One Stop Shop for All Your Da...WSO2Con ASIA 2016: WSO2 Analytics Platform: The One Stop Shop for All Your Da...
WSO2Con ASIA 2016: WSO2 Analytics Platform: The One Stop Shop for All Your Da...
WSO2
 

Similar to ShinySRAdb: an R package using shiny to wrap the SRAdb Bioconductor package (20)

Utilizing the open ntf domino api
Utilizing the open ntf domino apiUtilizing the open ntf domino api
Utilizing the open ntf domino api
 
Utilizing the OpenNTF Domino API
Utilizing the OpenNTF Domino APIUtilizing the OpenNTF Domino API
Utilizing the OpenNTF Domino API
 
SPTechCon 2014 How to develop and debug client side code in SharePoint
SPTechCon 2014 How to develop and debug client side code in SharePointSPTechCon 2014 How to develop and debug client side code in SharePoint
SPTechCon 2014 How to develop and debug client side code in SharePoint
 
Using Search API, Search API Solr and Facets in Drupal 8
Using Search API, Search API Solr and Facets in Drupal 8Using Search API, Search API Solr and Facets in Drupal 8
Using Search API, Search API Solr and Facets in Drupal 8
 
Utilizing the OpenNTF Domino API
Utilizing the OpenNTF Domino APIUtilizing the OpenNTF Domino API
Utilizing the OpenNTF Domino API
 
DanNotes 2013: OpenNTF Domino API
DanNotes 2013: OpenNTF Domino APIDanNotes 2013: OpenNTF Domino API
DanNotes 2013: OpenNTF Domino API
 
My Saminar On Php
My Saminar On PhpMy Saminar On Php
My Saminar On Php
 
Intro to appcelerator
Intro to appceleratorIntro to appcelerator
Intro to appcelerator
 
Using existing language skillsets to create large-scale, cloud-based analytics
Using existing language skillsets to create large-scale, cloud-based analyticsUsing existing language skillsets to create large-scale, cloud-based analytics
Using existing language skillsets to create large-scale, cloud-based analytics
 
Rapid API Development ArangoDB Foxx
Rapid API Development ArangoDB FoxxRapid API Development ArangoDB Foxx
Rapid API Development ArangoDB Foxx
 
zMSC Lab.pdf
zMSC Lab.pdfzMSC Lab.pdf
zMSC Lab.pdf
 
Practices and tools for building better APIs
Practices and tools for building better APIsPractices and tools for building better APIs
Practices and tools for building better APIs
 
Practices and tools for building better API (JFall 2013)
Practices and tools for building better API (JFall 2013)Practices and tools for building better API (JFall 2013)
Practices and tools for building better API (JFall 2013)
 
Apache Calcite (a tutorial given at BOSS '21)
Apache Calcite (a tutorial given at BOSS '21)Apache Calcite (a tutorial given at BOSS '21)
Apache Calcite (a tutorial given at BOSS '21)
 
Content migration for sitecore
Content migration for sitecoreContent migration for sitecore
Content migration for sitecore
 
QTP Online Training
QTP Online TrainingQTP Online Training
QTP Online Training
 
Oracle applications r12.2, ebr, online patching means lot of work for devel...
Oracle applications r12.2, ebr, online patching   means lot of work for devel...Oracle applications r12.2, ebr, online patching   means lot of work for devel...
Oracle applications r12.2, ebr, online patching means lot of work for devel...
 
Reproducibility and automation of machine learning process
Reproducibility and automation of machine learning processReproducibility and automation of machine learning process
Reproducibility and automation of machine learning process
 
New Features in JDK 8
New Features in JDK 8New Features in JDK 8
New Features in JDK 8
 
WSO2Con ASIA 2016: WSO2 Analytics Platform: The One Stop Shop for All Your Da...
WSO2Con ASIA 2016: WSO2 Analytics Platform: The One Stop Shop for All Your Da...WSO2Con ASIA 2016: WSO2 Analytics Platform: The One Stop Shop for All Your Da...
WSO2Con ASIA 2016: WSO2 Analytics Platform: The One Stop Shop for All Your Da...
 

More from Sean Davis

Lightweight data engineering, tools, and software to facilitate data reuse an...
Lightweight data engineering, tools, and software to facilitate data reuse an...Lightweight data engineering, tools, and software to facilitate data reuse an...
Lightweight data engineering, tools, and software to facilitate data reuse an...
Sean Davis
 
RNA-seq: A High-resolution View of the Transcriptome
RNA-seq: A High-resolution View of the TranscriptomeRNA-seq: A High-resolution View of the Transcriptome
RNA-seq: A High-resolution View of the Transcriptome
Sean Davis
 
RNA-seq Data Analysis Overview
RNA-seq Data Analysis OverviewRNA-seq Data Analysis Overview
RNA-seq Data Analysis Overview
Sean Davis
 
Forsharing cshl2011 sequencing
Forsharing cshl2011 sequencingForsharing cshl2011 sequencing
Forsharing cshl2011 sequencing
Sean Davis
 
Public datatutorialoverview
Public datatutorialoverviewPublic datatutorialoverview
Public datatutorialoverview
Sean Davis
 
Sssc retreat.bioinfo resources.20110411
Sssc retreat.bioinfo resources.20110411Sssc retreat.bioinfo resources.20110411
Sssc retreat.bioinfo resources.20110411
Sean Davis
 
OKC Grand Rounds 2009
OKC Grand Rounds 2009OKC Grand Rounds 2009
OKC Grand Rounds 2009Sean Davis
 
Genetics Branch Journal club
Genetics Branch Journal clubGenetics Branch Journal club
Genetics Branch Journal club
Sean Davis
 
Genomics Technologies
Genomics TechnologiesGenomics Technologies
Genomics Technologies
Sean Davis
 
Bioc strucvariant seattle_11_09
Bioc strucvariant seattle_11_09Bioc strucvariant seattle_11_09
Bioc strucvariant seattle_11_09
Sean Davis
 

More from Sean Davis (11)

Lightweight data engineering, tools, and software to facilitate data reuse an...
Lightweight data engineering, tools, and software to facilitate data reuse an...Lightweight data engineering, tools, and software to facilitate data reuse an...
Lightweight data engineering, tools, and software to facilitate data reuse an...
 
RNA-seq: A High-resolution View of the Transcriptome
RNA-seq: A High-resolution View of the TranscriptomeRNA-seq: A High-resolution View of the Transcriptome
RNA-seq: A High-resolution View of the Transcriptome
 
RNA-seq Data Analysis Overview
RNA-seq Data Analysis OverviewRNA-seq Data Analysis Overview
RNA-seq Data Analysis Overview
 
Rna seq
Rna seqRna seq
Rna seq
 
Forsharing cshl2011 sequencing
Forsharing cshl2011 sequencingForsharing cshl2011 sequencing
Forsharing cshl2011 sequencing
 
Public datatutorialoverview
Public datatutorialoverviewPublic datatutorialoverview
Public datatutorialoverview
 
Sssc retreat.bioinfo resources.20110411
Sssc retreat.bioinfo resources.20110411Sssc retreat.bioinfo resources.20110411
Sssc retreat.bioinfo resources.20110411
 
OKC Grand Rounds 2009
OKC Grand Rounds 2009OKC Grand Rounds 2009
OKC Grand Rounds 2009
 
Genetics Branch Journal club
Genetics Branch Journal clubGenetics Branch Journal club
Genetics Branch Journal club
 
Genomics Technologies
Genomics TechnologiesGenomics Technologies
Genomics Technologies
 
Bioc strucvariant seattle_11_09
Bioc strucvariant seattle_11_09Bioc strucvariant seattle_11_09
Bioc strucvariant seattle_11_09
 

Recently uploaded

EY - Supply Chain Services 2018_template.pptx
EY - Supply Chain Services 2018_template.pptxEY - Supply Chain Services 2018_template.pptx
EY - Supply Chain Services 2018_template.pptx
AlguinaldoKong
 
Seminar of U.V. Spectroscopy by SAMIR PANDA
 Seminar of U.V. Spectroscopy by SAMIR PANDA Seminar of U.V. Spectroscopy by SAMIR PANDA
Seminar of U.V. Spectroscopy by SAMIR PANDA
SAMIR PANDA
 
Observation of Io’s Resurfacing via Plume Deposition Using Ground-based Adapt...
Observation of Io’s Resurfacing via Plume Deposition Using Ground-based Adapt...Observation of Io’s Resurfacing via Plume Deposition Using Ground-based Adapt...
Observation of Io’s Resurfacing via Plume Deposition Using Ground-based Adapt...
Sérgio Sacani
 
What is greenhouse gasses and how many gasses are there to affect the Earth.
What is greenhouse gasses and how many gasses are there to affect the Earth.What is greenhouse gasses and how many gasses are there to affect the Earth.
What is greenhouse gasses and how many gasses are there to affect the Earth.
moosaasad1975
 
4. An Overview of Sugarcane White Leaf Disease in Vietnam.pdf
4. An Overview of Sugarcane White Leaf Disease in Vietnam.pdf4. An Overview of Sugarcane White Leaf Disease in Vietnam.pdf
4. An Overview of Sugarcane White Leaf Disease in Vietnam.pdf
ssuserbfdca9
 
The ASGCT Annual Meeting was packed with exciting progress in the field advan...
The ASGCT Annual Meeting was packed with exciting progress in the field advan...The ASGCT Annual Meeting was packed with exciting progress in the field advan...
The ASGCT Annual Meeting was packed with exciting progress in the field advan...
Health Advances
 
ESR_factors_affect-clinic significance-Pathysiology.pptx
ESR_factors_affect-clinic significance-Pathysiology.pptxESR_factors_affect-clinic significance-Pathysiology.pptx
ESR_factors_affect-clinic significance-Pathysiology.pptx
muralinath2
 
platelets- lifespan -Clot retraction-disorders.pptx
platelets- lifespan -Clot retraction-disorders.pptxplatelets- lifespan -Clot retraction-disorders.pptx
platelets- lifespan -Clot retraction-disorders.pptx
muralinath2
 
Nutraceutical market, scope and growth: Herbal drug technology
Nutraceutical market, scope and growth: Herbal drug technologyNutraceutical market, scope and growth: Herbal drug technology
Nutraceutical market, scope and growth: Herbal drug technology
Lokesh Patil
 
Hemostasis_importance& clinical significance.pptx
Hemostasis_importance& clinical significance.pptxHemostasis_importance& clinical significance.pptx
Hemostasis_importance& clinical significance.pptx
muralinath2
 
SCHIZOPHRENIA Disorder/ Brain Disorder.pdf
SCHIZOPHRENIA Disorder/ Brain Disorder.pdfSCHIZOPHRENIA Disorder/ Brain Disorder.pdf
SCHIZOPHRENIA Disorder/ Brain Disorder.pdf
SELF-EXPLANATORY
 
Circulatory system_ Laplace law. Ohms law.reynaults law,baro-chemo-receptors-...
Circulatory system_ Laplace law. Ohms law.reynaults law,baro-chemo-receptors-...Circulatory system_ Laplace law. Ohms law.reynaults law,baro-chemo-receptors-...
Circulatory system_ Laplace law. Ohms law.reynaults law,baro-chemo-receptors-...
muralinath2
 
Mammalian Pineal Body Structure and Also Functions
Mammalian Pineal Body Structure and Also FunctionsMammalian Pineal Body Structure and Also Functions
Mammalian Pineal Body Structure and Also Functions
YOGESH DOGRA
 
Orion Air Quality Monitoring Systems - CWS
Orion Air Quality Monitoring Systems - CWSOrion Air Quality Monitoring Systems - CWS
Orion Air Quality Monitoring Systems - CWS
Columbia Weather Systems
 
Astronomy Update- Curiosity’s exploration of Mars _ Local Briefs _ leadertele...
Astronomy Update- Curiosity’s exploration of Mars _ Local Briefs _ leadertele...Astronomy Update- Curiosity’s exploration of Mars _ Local Briefs _ leadertele...
Astronomy Update- Curiosity’s exploration of Mars _ Local Briefs _ leadertele...
NathanBaughman3
 
Lateral Ventricles.pdf very easy good diagrams comprehensive
Lateral Ventricles.pdf very easy good diagrams comprehensiveLateral Ventricles.pdf very easy good diagrams comprehensive
Lateral Ventricles.pdf very easy good diagrams comprehensive
silvermistyshot
 
Multi-source connectivity as the driver of solar wind variability in the heli...
Multi-source connectivity as the driver of solar wind variability in the heli...Multi-source connectivity as the driver of solar wind variability in the heli...
Multi-source connectivity as the driver of solar wind variability in the heli...
Sérgio Sacani
 
In silico drugs analogue design: novobiocin analogues.pptx
In silico drugs analogue design: novobiocin analogues.pptxIn silico drugs analogue design: novobiocin analogues.pptx
In silico drugs analogue design: novobiocin analogues.pptx
AlaminAfendy1
 
Deep Behavioral Phenotyping in Systems Neuroscience for Functional Atlasing a...
Deep Behavioral Phenotyping in Systems Neuroscience for Functional Atlasing a...Deep Behavioral Phenotyping in Systems Neuroscience for Functional Atlasing a...
Deep Behavioral Phenotyping in Systems Neuroscience for Functional Atlasing a...
Ana Luísa Pinho
 
GBSN- Microbiology (Lab 3) Gram Staining
GBSN- Microbiology (Lab 3) Gram StainingGBSN- Microbiology (Lab 3) Gram Staining
GBSN- Microbiology (Lab 3) Gram Staining
Areesha Ahmad
 

Recently uploaded (20)

EY - Supply Chain Services 2018_template.pptx
EY - Supply Chain Services 2018_template.pptxEY - Supply Chain Services 2018_template.pptx
EY - Supply Chain Services 2018_template.pptx
 
Seminar of U.V. Spectroscopy by SAMIR PANDA
 Seminar of U.V. Spectroscopy by SAMIR PANDA Seminar of U.V. Spectroscopy by SAMIR PANDA
Seminar of U.V. Spectroscopy by SAMIR PANDA
 
Observation of Io’s Resurfacing via Plume Deposition Using Ground-based Adapt...
Observation of Io’s Resurfacing via Plume Deposition Using Ground-based Adapt...Observation of Io’s Resurfacing via Plume Deposition Using Ground-based Adapt...
Observation of Io’s Resurfacing via Plume Deposition Using Ground-based Adapt...
 
What is greenhouse gasses and how many gasses are there to affect the Earth.
What is greenhouse gasses and how many gasses are there to affect the Earth.What is greenhouse gasses and how many gasses are there to affect the Earth.
What is greenhouse gasses and how many gasses are there to affect the Earth.
 
4. An Overview of Sugarcane White Leaf Disease in Vietnam.pdf
4. An Overview of Sugarcane White Leaf Disease in Vietnam.pdf4. An Overview of Sugarcane White Leaf Disease in Vietnam.pdf
4. An Overview of Sugarcane White Leaf Disease in Vietnam.pdf
 
The ASGCT Annual Meeting was packed with exciting progress in the field advan...
The ASGCT Annual Meeting was packed with exciting progress in the field advan...The ASGCT Annual Meeting was packed with exciting progress in the field advan...
The ASGCT Annual Meeting was packed with exciting progress in the field advan...
 
ESR_factors_affect-clinic significance-Pathysiology.pptx
ESR_factors_affect-clinic significance-Pathysiology.pptxESR_factors_affect-clinic significance-Pathysiology.pptx
ESR_factors_affect-clinic significance-Pathysiology.pptx
 
platelets- lifespan -Clot retraction-disorders.pptx
platelets- lifespan -Clot retraction-disorders.pptxplatelets- lifespan -Clot retraction-disorders.pptx
platelets- lifespan -Clot retraction-disorders.pptx
 
Nutraceutical market, scope and growth: Herbal drug technology
Nutraceutical market, scope and growth: Herbal drug technologyNutraceutical market, scope and growth: Herbal drug technology
Nutraceutical market, scope and growth: Herbal drug technology
 
Hemostasis_importance& clinical significance.pptx
Hemostasis_importance& clinical significance.pptxHemostasis_importance& clinical significance.pptx
Hemostasis_importance& clinical significance.pptx
 
SCHIZOPHRENIA Disorder/ Brain Disorder.pdf
SCHIZOPHRENIA Disorder/ Brain Disorder.pdfSCHIZOPHRENIA Disorder/ Brain Disorder.pdf
SCHIZOPHRENIA Disorder/ Brain Disorder.pdf
 
Circulatory system_ Laplace law. Ohms law.reynaults law,baro-chemo-receptors-...
Circulatory system_ Laplace law. Ohms law.reynaults law,baro-chemo-receptors-...Circulatory system_ Laplace law. Ohms law.reynaults law,baro-chemo-receptors-...
Circulatory system_ Laplace law. Ohms law.reynaults law,baro-chemo-receptors-...
 
Mammalian Pineal Body Structure and Also Functions
Mammalian Pineal Body Structure and Also FunctionsMammalian Pineal Body Structure and Also Functions
Mammalian Pineal Body Structure and Also Functions
 
Orion Air Quality Monitoring Systems - CWS
Orion Air Quality Monitoring Systems - CWSOrion Air Quality Monitoring Systems - CWS
Orion Air Quality Monitoring Systems - CWS
 
Astronomy Update- Curiosity’s exploration of Mars _ Local Briefs _ leadertele...
Astronomy Update- Curiosity’s exploration of Mars _ Local Briefs _ leadertele...Astronomy Update- Curiosity’s exploration of Mars _ Local Briefs _ leadertele...
Astronomy Update- Curiosity’s exploration of Mars _ Local Briefs _ leadertele...
 
Lateral Ventricles.pdf very easy good diagrams comprehensive
Lateral Ventricles.pdf very easy good diagrams comprehensiveLateral Ventricles.pdf very easy good diagrams comprehensive
Lateral Ventricles.pdf very easy good diagrams comprehensive
 
Multi-source connectivity as the driver of solar wind variability in the heli...
Multi-source connectivity as the driver of solar wind variability in the heli...Multi-source connectivity as the driver of solar wind variability in the heli...
Multi-source connectivity as the driver of solar wind variability in the heli...
 
In silico drugs analogue design: novobiocin analogues.pptx
In silico drugs analogue design: novobiocin analogues.pptxIn silico drugs analogue design: novobiocin analogues.pptx
In silico drugs analogue design: novobiocin analogues.pptx
 
Deep Behavioral Phenotyping in Systems Neuroscience for Functional Atlasing a...
Deep Behavioral Phenotyping in Systems Neuroscience for Functional Atlasing a...Deep Behavioral Phenotyping in Systems Neuroscience for Functional Atlasing a...
Deep Behavioral Phenotyping in Systems Neuroscience for Functional Atlasing a...
 
GBSN- Microbiology (Lab 3) Gram Staining
GBSN- Microbiology (Lab 3) Gram StainingGBSN- Microbiology (Lab 3) Gram Staining
GBSN- Microbiology (Lab 3) Gram Staining
 

ShinySRAdb: an R package using shiny to wrap the SRAdb Bioconductor package

  • 1. Shiny Web Application for SRAdb Olivia Zhang 8/13/2015 Thomas Jefferson High School for Science and Technology NCI Summer Intern
  • 2. ShinySRAdb Web application Overview: o User interface for SRAdb package o Programmed using “Shiny Apps” package in R o Easier way to query, view, and interact with SRA data Installation: o Full Instructions and program files at https://github.com/oliviazz/SRAdb-app o R commands for usage: • Install.packages(“devtools”) and library(devtools) • install_github('seandavi/SRAdb-app’) • Library(ShinySRAdb) • ShinySRAdb() to launch
  • 3. Shiny Applications • R Package for creating Web Applications • Server.R and Ui.R files o Server.R file runs R Session o UI File provides HTML-based user interface • Dynamic, responsive data outputs • Shiny App Structure: o UI file contains design elements, input widgets (text input, checkboxes) o Server file collects user input through widgets IDs o Server uses input to return unique output objects (data tables, plots) to the UI file Widget in UI Defining table output in server
  • 4. SRAdb Application Structure • Workflow Design o Search Function & Operation Function o Enter Search Terms > Filter Results > Perform Operations on Results
  • 5. 1) Search Results • SRAdb function “getSRA” performs full-text search across entire SQLite database and returns datatable of results o Compatible with advanced search options, *, “”, OR • User input for search terms and data type accepted as arguments o text input (id “searchTerms”) and select input widgets (id “dataType”) UIServer
  • 6. 2) Filtering Results • Users may need a way to narrow down results from a broad full text search o Achieved through DT Package and user input as SRAdb function arguments Sort results by value of a selected column (i.e. by most recent date) Select SRA Data TypeSpecify value for specific column Search within results
  • 7. 3) DT Package for formatting and filtering: • DT: R Package for Data Table customization o Shiny methods masked • Data table customized using DT Packages’s built-in extensions and options o Customizations included in Server File when defining tableOutput
  • 8. 4) “Isolate” Functions Shiny reactive outputs regenerates automatically when dependency inputs change o Search Results would be regenerated w/ each letter typed Outputs isolated to save unnecessary function calls • Only defined inputs trigger responses (i.e. button click) • ObserveEvent code is also only triggered by a certain event • Use in App: o Search Result table not regenerated unless search button pressed o Operation function not performed unless action button pressed
  • 9. 5) Performing Operations • Operations performed for selected rows o Click to select rows o Choose an operation from dropdown menu o SRAdb functions that accept accessions as arguments • Accessions parsed from selected rows (input$tableName_rows_selected)
  • 10. 5) Performing Operations (cont). • Each choice in input widget returns different string value to server o Switch statement to perform correct function based on string value • Related Accession Codes → listSRAFile() • Export Selected → Download Handler • Get FASTQ info → getFASTQInfo() • Get SRA info → getSRAInfo() • FASTQ Dump → fastqDump() • Display Entity Graph → sraGraph()
  • 11. 6) Operation Examples • Get SRA Info o Accession codes and SRA FTP Download Link, size, upload date • Get FASTQ Info o Accession codes and FASTQ FTP Download Link, file size, upload date
  • 12. 6) Operation Examples (cont.) Display Entity Relationship Graph o Parses accession from the row selected o SRAConvert() used to find all related accessions o sraGraph() graphs accessions appropriately o Helpful for visualizing data relationships Get Related Accession Codes o Returns the run, experiment, study, sample, and submission accessions associated with selected row
  • 13. 6) Operation Examples (cont.) • Export Selected Rows o Used Shiny Download button & handler • File name: Defined used search terms entered and date • Contents: Selected rows of search result table written into .csv file • Export Full SRA o Same process, with full SRA table as file content (all columns)
  • 14. 6) Operation Examples (cont.) • FASTQ Dump File o Implementation of NCBI SRA Toolkit’s ‘FASTQ Dump’ function in R language o Options panel automatically pops up if “FASTQ Dump” operation chosen o Download FASTQ files for a specific run o Specify FASTQ options, output format, download location, and more • Arguments in “fastqDump()” method
  • 15. 7) Additional Features • Alerts o Alerts generated using ShinyBS Package o “if Statements” to catch errors o Prevents data mismatches for operations, empty result cases, etc. • Progress Bar • Indicate if app is loading • Used Shiny::progress to initiate, closes on function exit • Let User know what program is doing
  • 16. Workflow Examples Find Information on Studies of Human Breast Cancer: o Search “Breast Cancer”, View -> Study o Search within results “human” o Use column selection tool to show only desired data fields o Choose selected rows and export as .csv file OR o Click “Print” button and edit print setup accordingly
  • 17. Workflow Examples Get FASTQ Files for a run related to Thyroid Cancer: o Search Studies > “Thyroid Cancer” o Select a row > “Get related accessions” o Search run Accession code, data Type = “run” o Select a Row > “Perform FASTQ Dump” o Configure FASTQ Options, “Submit” o Open Download Directory to view file
  • 18. Conclusion • Web application provides a simple user interface for the SRAdb package o Users can query SRA broadly or specifically o Users can download SRA/FASTQ files, perform FASTQ dumps, view entity relationship graphs, convert data types, export results, and more o SRA usage simplified through Graphic view of SRA and SRAdb functions • Application Code at: https://github.com/oliviazz/SRAdb- app
  • 19. Dr. Sean Davis Dr. Jack Zhu Dr. Josh Waterfall Members of Dr. Meltzer’s Lab Acknowledgements