O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Shiny R

Video Description

4+ Hours of Video Instruction

Create visual, interactive, data-based web applications without having to be a web developer

Overview

In Shiny R LiveLessons, Jared Lander shows you how to use Shiny to your advantage. Shiny is an open source web framework for R and Rstudio that enables you to turn analyses into visual, interactive applications. Shiny applications are easy to write and are built with R. No web development skills are necessary.

About the Instructor

Jared P. Lander is the chief data scientist of Lander Analytics, a New York-based data science firm that specializes in data science and AI consulting and training. He is the organizer of the New York Open Statistical Programming Meetup and the New York R Conference, and is an adjunct professor at Columbia University. With a master's degree from Columbia University in statistics and a bachelor’s from Muhlenberg College in mathematics, he has experience in both academic research and industry.

Very active in the data community, Jared is a frequent speaker at conferences, universities, and meetups around the world such as Strata Hadoop World and the MIT Sloan Sports Analytics Conference. His writings on statistics can be found at jaredlander.com, and his work has been featured in publications such as Forbes and the Wall Street Journal.

Skill Level

  • Beginner to intermediate analytics skills

Learn How To

  • Use simple markup (Markdown, RMarkdown) with Shiny
  • Display data interactively
  • Use reactive expressions to render dynamic computations
  • Use flexdashboard for quick and elegant layout
  • Use the shinydashboard package for professional apps

Who Should Take This Course

  • Anyone with who wants to add to their R skills in order to create visual, interactive, data-based applications

Course Requirements

  • Familiarity with R
  • Statistics/data analytics background

Lesson Descriptions

Lesson 1: Getting Started with Markdown

Markdown is an excellent tool for writing documents. It enables you to focus on content and not be distracted by design. Highly flexible, it can render elegant HTML files, professional PDFs, editable Word documents, web slideshows, and more. You learn the basic structure of Markdown documents and how easy it is to write page after page.

Lesson 2: Integrating Code into Markdown

Weaving together R code with prose has been a hallmark of scientific writing in R for many years thanks to S-Weave and knitr. Now with RMarkdown it is easier than ever before. We go over the necessary steps to integrate R code into Markdown documents for easy blending of results and explanations.

Lesson 3: Shiny in RMarkdown

Getting started with Shiny can seem daunting at first, having to deal with server-side and UI-side code. This endeavour does not have to be intimidating, however, because Shiny can be integrated into RMarkdown with ease. We learn the basic concepts of Shiny, such as user inputs and rendering outputs, all within a single-file RMarkdown document.

Lesson 4: Reactive Expressions

The underpinning of Shiny is reactivity. This is how objects are updated based on changes in other objects. We cover the basics of what is needed to know in order to avoid trouble while building Shiny apps.

Lesson 5: flexdashboard

The flexdashboard package enables the creation of stunning web layouts, powered by R, written entirely in RMarkdown. We create a document that looks and feels like a full website and add Shiny components for interactivity.

Lesson 6: shinydashboard

Traditional Shiny apps depend upon UI and server files which separate form from function. With shinydashboard we can quickly build professional web apps that are highly customizable. We go through layout considerations and how to incorporate input and output objects. We then integrate HTML widgets, use shinyjs to incorporate JavaScript functionality and enable the creation of user-generated reports.

About Pearson Video Training

Pearson publishes expert-led video tutorials covering a wide selection of technology topics designed to teach you the skills you need to succeed. These professional and personal technology videos feature world-leading author instructors published by your trusted technology brands: Addison-Wesley, Cisco Press, Pearson IT Certification, Prentice Hall, Sams, and Que Topics include: IT Certification, Network Security, Cisco Technology, Programming, Web Development, Mobile Development, and more. Learn more about Pearson Video training at http://www.informit.com/video.

Table of Contents

  1. Introduction
    1. Shiny R: Introduction 00:01:10
  2. Lesson 1: Getting Started with Markdown
    1. Learning objectives 00:00:32
    2. 1.1 Create a new file 00:01:40
    3. 1.2 Set up a YAML header 00:03:00
    4. 1.3 Use sections 00:04:03
    5. 1.4 Do text formatting 00:02:25
    6. 1.5 Create lists 00:06:46
    7. 1.6 Create links 00:02:30
    8. 1.7 Write equations using LaTeX-style math 00:03:52
    9. 1.8 Write footnotes 00:02:14
    10. 1.9 Use more YAML options 00:05:11
    11. 1.10 Render other formats 00:02:18
  3. Lesson 2: Integrating Code into Markdown
    1. Learning objectives 00:00:27
    2. 2.1 Code chunks 00:04:53
    3. 2.2 Load and show data 00:05:37
    4. 2.3 Build a plot 00:02:14
    5. 2.4 Set chunk options 00:02:32
    6. 2.5 Set global options 00:02:11
  4. Lesson 3: Shiny in RMarkdown
    1. Learning objectives 00:00:32
    2. 3.1 Set the Shiny runtime 00:02:29
    3. 3.2 Select input 00:03:27
    4. 3.3 Print an input value 00:01:47
    5. 3.4 Utilize slider input 00:02:38
    6. 3.5 Create check boxes 00:02:11
    7. 3.6 Create radio buttons 00:01:29
    8. 3.7 Create date input 00:03:27
    9. 3.8 Utilize text input 00:02:40
    10. 3.9 Render text 00:02:55
    11. 3.10 Display data 00:03:31
    12. 3.11 Render and control plots 00:05:06
  5. Lesson 4: Reactive Expressions
    1. Learning objectives 00:00:22
    2. 4.1 Use reactive inputs 00:03:12
    3. 4.2 Save a reactive expression to a variable the wrong way 00:05:56
    4. 4.3 Save a reactive expression to a variable the right way 00:02:50
    5. 4.4 Examine the reactivity graph 00:01:59
  6. Lesson 5 IOSlides Presentations
    1. Learning objectives 00:00:29
    2. 5.1 Set up a YAML header to make a presentation file 00:03:27
    3. 5.2 Build a full presentation 00:03:37
    4. 5.3 Add speaker notes to use in presentation mode 00:04:04
    5. 5.4 Use Shiny within a presentation 00:04:55
  7. Lesson 6: Building Attractive Web Dashboards with flexdashboard
    1. Learning objectives 00:00:23
    2. 6.1 Set up a YAML header to make a dashboard file 00:04:07
    3. 6.2 Set up columns and rows 00:02:55
    4. 6.3 Populate cells 00:05:31
    5. 6.4 Integrate Shiny into flexdashboard 00:04:48
    6. 6.5 Add an input to control the output 00:05:20
    7. 6.6 Create pages 00:01:17
    8. 6.7 Create a sidebar 00:02:27
    9. 6.8 Read a file and display as a datatable 00:07:06
    10. 6.9 Cycle displays with tabsets 00:03:10
    11. 6.10 Nest pages in a drop-down menu 00:03:08
    12. 6.11 Add links to social networks 00:01:33
    13. 6.12 Include a logo and favicon 00:02:26
    14. 6.13 Embed all the code in the dashboard 00:00:52
    15. 6.14 Read json data and display it in interactive tables and maps 00:11:42
    16. 6.15 Install development versions for DT and Leaflet 00:01:25
    17. 6.16 Make widgets interact with each other with crosstalk 00:09:01
  8. Lesson 7: Building a Robust Dashboard with shinydashboard
    1. Learning objectives 00:00:37
    2. 7.1 Create UI and server files 00:02:06
    3. 7.2 Write a bare bones server file 00:02:11
    4. 7.3 Write a bare bones UI file 00:02:41
    5. 7.4 See that UI code generates HTML 00:01:15
    6. 7.5 Separate the UI components and populate the navigation bar 00:08:59
    7. 7.6 Create tab items in the body 00:03:04
    8. 7.7 Use HTML tags for formatting 00:03:27
    9. 7.8 Add a drop-down select 00:04:02
    10. 7.9 Build a user-controlled plot 00:06:09
    11. 7.10 Align items with fluidRow and box 00:05:32
    12. 7.11 Create tabbed boxes with tabBox and tabPanel 00:07:32
    13. 7.12 Update UI components from the server side 00:13:10
    14. 7.13 Use JavaScript functionality through shinyjs 00:17:49
    15. 7.14 Make HTML widgets communicate in Shiny 00:11:40
    16. 7.15 Generate parameterized reports 00:05:30
    17. 7.16 Download a parameterized report through a download button 00:07:37
    18. 7.17 Move repeated code to global.r file 00:01:59
    19. 7.18 Put all the app code in a single file 00:03:05
  9. Summary
    1. Shiny R: Summary 00:00:40