Welcome

Shiny is an R package that makes it easy to build interactive web apps straight from R. You can host standalone apps on a webpage or embed them in R Markdown documents or build dashboards. — Official Shiny Website

샤이니(shiny)는 R Studio에서 개발한 R 패키지입니다. 샤이니를 이용하면 R 언어만을 사용해서 입력값이 바뀜에 따라 함께 바뀌는 결과값 또는 그래프 등을 보여주는 애플리케이션을 (비교적 손쉽게) 만들 수 있습니다. Shiny 공식 홈페이지에서는 이를 이용해 만든 다양한 애플리케이션을 보여주고 있습니다. 이 책에서 길게 설명하는 것보다 직접 예제들을 살펴보면 어렵지 않게 샤이니가 할 수 있는 일들에 대한 감을 잡을 수 있을 것입니다.

데이터 과학의 작업 흐름의 제일 마지막 단계는 분석한 내용을 다른사람과 소통하는 (Communicate) 것 입니다. 그리고 샤이니는 데이터 과학자가 CSS나 JavaScript 같은 웹 언어를 모르더라도 사용자가 입력한 값에 즉시 반응하는 애플리케이션을 만들 수 있게 해줍니다. 그럼으로써 들어오는 데이터가 수시로 (어쩌면 실시간으로) 바뀌는 환경에서도 항상 자동화되고 일관된 레포트를 이용해 소통할 수 있게 해줍니다.

이 책(또는 웹페이지)은 1) R을 어느정도 사용할 수 있고 2) Shiny를 배우고 싶은 마음이 막 들기 시작한 독자를 위해 쓰였습니다. 아래에 제시된 4가지를 다 알고 있다면 당신은 이 책을 시작할 충분한 준비가 된 것입니다.

  1. Shiny를 시작해 보고 싶은 마음이 있다.
  2. R과 R Studio를 설치할 수 있다.
  3. install.package()library()함수를 사용할 수 있다.
  4. ggplot2로 그래프를 그릴 수 있다.
  5. pipe 연산자(%>%)를 사용할 수 있다.
  6. 객체(Object)와 함수(Function)이라는 용어를 이해한다.

만약 준비가 되지 않았다면 제가 추천하는 두권의 책을 먼저 읽고 오면 좋을 것 같습니다. 읽는 순서는 중요하지 않지만 만약 한권만 읽을 수 있다면 첫번째 책을 추천하고 싶습니다. 번역된 책도 있지만 원서의 경우 무료로 공개가 되어 있습니다.

  1. R을 이용한 데이터과학
  2. 손에 잡히는 R 프로그래밍

최대한 간결하고 쉽게 쓰려고 노력했습니다. 내용이 많아지면 오히려 큰 흐름에 혼란을 줄 수 있을 수도 있을 것 같아 (상당히) 많은 부분을 덜어냈습니다. 부디 이 책에 다루지 않은 내용들 때문에 샤이니의 가능성을 저평가 하지 않길 바랍니다. 샤이니에 대한 지식이 10까지 있다면 본 책은 0에서 1까지 가는 것을 목표로 하고 있습니다. 만약 앞으로의 시간들을 통해 당신이 샤이니에 대한 재미를 조금이라도 느낄 수 있다면 성공입니다. 저는 그 재미와 호기심이 당신을 더 높은 곳까지 이끌어 줄 것이라 믿습니다.

자 그럼 시작해 볼까요? 집앞으로 산책을 나서는 가벼운 마음 정도면 충분합니다. 신발끈을 묶기 위해선 먼저 다음 함수가 필요할 것 같습니다.

install.package("shiny")
install.package("tidyverse")