Tutorial R Shiny: Cum să faci aplicații web interactive în R

Publicat: 2020-03-16

Cuprins

Introducere

În această eră tehnologică modernă, diverse aplicații sunt disponibile pentru noi toți – de la urmărirea nivelului nostru de fitness, somn până la a ne oferi cele mai recente informații despre bursele. Aplicații precum Robinhood, Google Fit și Workit par atât de uimitor de utile, deoarece folosesc date și statistici în timp real. Întrucât R este un lider în domeniul calculului statistic și al programării, dezvoltatorii au nevoie de un sistem care să-și folosească puterea pentru a construi aplicații. Aflați mai multe despre programarea R.

Aici vine R Shiny pentru a salva ziua. În acest tutorial R Shiny, veți ajunge să cunoașteți elementele de bază.

Ce este R Shiny?

Shiny este un pachet R care a fost dezvoltat pentru a construi aplicații web interactive în R . Folosind aceasta, puteți crea aplicații web folosind codul HTML și CSS nativ împreună cu codul R Shiny. Puteți crea aplicații web de sine stătătoare pe un site web care va facilita vizualizarea datelor. Aceste aplicații realizate prin R Shiny pot afișa fără probleme obiecte R, cum ar fi tabele și diagrame.

Să ne uităm la câteva dintre caracteristicile lui R Shiny:

  • Creați aplicații web cu mai puține linii de cod, fără JavaScript.
  • Aceste aplicații sunt live și sunt accesibile utilizatorilor, cum ar fi foile de calcul. Ieșirile se pot modifica în timp real dacă utilizatorii modifică intrarea.
  • Dezvoltatorii cu puține cunoștințe despre instrumentele web pot crea și aplicații folosind R Shiny.
  • Obțineți widget-uri încorporate pentru a afișa tabele, ieșiri ale obiectelor R și diagrame.
  • Puteți adăuga vizualizări live și rapoarte la aplicația web folosind acest pachet.
  • Interfețele utilizator pot fi codificate în R sau pot fi pregătite folosind HTML, CSS sau JavaScript.
  • Interfața de utilizator implicită este construită folosind Bootstrap.
  • Vine cu un pachet WebSocket care permite comunicarea rapidă între serverul web și R.

Citiți: Arborele de decizie în R

Componentele unei aplicații R Shiny

O aplicație Shiny are două componente principale – un obiect de interfață cu utilizatorul și o funcție de server. Acestea sunt argumentele transmise metodei shinyApp . Această metodă creează un obiect aplicație folosind argumentele.

Învață știința datelor de la cele mai bune universități din lume. Câștigă programe Executive PG, programe avansate de certificat sau programe de master pentru a-ți accelera cariera.

Citește și: Algoritmul KNN în R

Să înțelegem părțile de bază ale unei aplicații R Shiny în detaliu:

Funcția de interfață cu utilizatorul

Această funcție definește aspectul aplicației web. Face aplicația interactivă obținând input de la utilizator și afișând-o pe ecran. Etichetele HTML și CSS pot fi folosite pentru a face aplicația să arate mai bine. Deci, în timp ce construiți fișierul ui.R, creați un fișier HTML cu funcții R.

Dacă tastați fluidPage() în consola R, veți vedea că metoda returnează o etichetă <div class="container-fluid"></div>.

Diferitele funcții de intrare sunt:

  • selectInput () – Această metodă este utilizată pentru a crea un HTML drop-down care are diferite opțiuni de selectat.
  • numericInput () – Această metodă creează o zonă de introducere pentru a scrie text sau numere.
  • RadioButtons () – Acesta oferă butoane radio pentru ca utilizatorul să selecteze o intrare.

Metode de amenajare

Diferitele caracteristici de aspect disponibile în Bootstrap sunt implementate de R Shiny. Componentele sunt:

Panouri

Acestea sunt metode care grupează elemente într-un singur panou. Acestea includ:

  • absolutePanel()
  • inputPanel()
  • conditionalPanel()
  • headerPanel()
  • fixedPanel()

Funcții de layout

Acestea organizează panourile pentru un anumit aspect. Acestea includ:

  • fluidRow()
  • verticalLayout()
  • flowLayout()
  • splitLayout()
  • sidebarLayout()

Metode de ieșire

Aceste metode sunt utilizate pentru afișarea imaginilor, tabelelor și diagramelor componentelor de ieșire R. Sunt:

  • tableOutput() – Această metodă este folosită pentru afișarea unui tabel R
  • plotOutput() – Această metodă este utilizată pentru afișarea unui obiect R plot

Funcția de server

După ce ați creat aspectul aplicației și modalitățile de a prelua valorile de intrare de la utilizator, este timpul să configurați serverul. Funcțiile serverului vă ajută să scrieți codul de pe partea serverului pentru aplicația Shiny. Puteți crea funcții care mapează intrările utilizatorului la ieșirile corespunzătoare. Această funcție este apelată de browserul web atunci când aplicația este încărcată.

Este nevoie de un parametru de intrare și de ieșire, iar valorile returnate sunt ignorate. Un parametru de sesiune opțional este, de asemenea, luat prin această metodă.

Tutorial R Shiny: Cum să începeți cu R Shiny?

Pașii pentru a începe lucrul cu pachetul R Shiny sunt următorii:

  • Accesați consola R și introduceți comanda – install.packages(„strălucitor”)
  • Pachetul vine cu 11 exemple de aplicații încorporate pentru a înțelege cum funcționează Shiny

Puteți începe cu exemplul Hello Shiny pentru a înțelege structura de bază. Introdu acest cod pentru a rula Hello Shiny:

bibliotecă (strălucitor)

runExample(„01_hello”)

Pașii pentru a crea o nouă aplicație Shiny sunt:

  • Deschideți RStudio și accesați opțiunea Fișier
  • Selectați Proiect nou într-un director și faceți clic pe aplicația „Shiny Web”.
  • Veți obține o histogramă și un glisor pentru a testa modificările de ieșire în raport cu intrarea
  • Veți primi două scripturi ui.R și server.R pentru codarea și personalizarea aplicației

Sfaturi pentru dezvoltarea aplicației Shiny

  • Testați aplicația în browser pentru a vedea cum arată înainte de a o trimite pentru producție
  • Rulați întregul script în timp ce depanați aplicația
  • Aveți grijă la erorile comune, cum ar fi virgulele

Concluzie

Dacă sunteți curios să aflați despre știința datelor, consultați programul nostru Executive PG în știința datelor, care este creat pentru profesioniști care lucrează și oferă peste 10 studii de caz și proiecte, ateliere practice practice, mentorat cu experți din industrie, 1-la-1 cu mentori din industrie, peste 400 de ore de învățare și asistență profesională cu firme de top.

Cea mai bună parte a lui Shiny este că nu trebuie să cunoști HTML, CSS sau JavaScript pentru a-l folosi. Mai mult, puteți construi aplicații și le puteți implementa pe versiunea gratuită a shinyapps.io. Păstrați acest tutorial R Shiny la îndemână când începeți.

Care sunt beneficiile R Shiny?

Fiecare om de știință a datelor trebuie să beneficieze de ajutorul anumitor instrumente pentru a scoate la iveală informațiile din date în fața publicului larg. Shiny este un pachet disponibil în R pentru dezvoltarea aplicațiilor web interactive. Aveți o mulțime de opțiuni pentru a vă comunica rezultatele prin texte, tabele, vizualizări sau diagrame interactive. Dacă cunoașteți programarea R, puteți dezvolta cu ușurință o aplicație, deoarece Shiny este destul de ușor de utilizat. Există capabilități încorporate pentru a vă împărtăși cu ușurință munca cu prietenii și colegii. Designul aplicației Shiny este destul de uimitor. Chiar dacă vă uitați la afișajul implicit, îl veți găsi destul de intuitiv și elegant.

Prin ce se constată că Shiny este diferit de aplicațiile tradiționale?

Să înțelegem mai bine acest lucru cu ajutorul unui exemplu de aplicație meteo. Ori de câte ori utilizatorul reîncarcă pagina sau chiar modifică o mică intrare pe pagină, aplicația va trebui să actualizeze întreaga pagină cu ajutorul JS. Acest lucru va adăuga multă încărcare pe partea serverului pentru a procesa actualizarea.

Pe de altă parte, Shiny va izola sau reîncărca elementele aplicației care reduc încărcarea serverului. Structura va juca un rol foarte important în înțelegerea și depanarea codului. S-a constatat că derularea prin aplicațiile web este puțin dificilă cu aplicațiile Shiny în comparație cu aplicațiile tradiționale.

R Shiny este greu de învățat?

Frame-ul Shiny este un pachet disponibil în R care este util pentru construirea de aplicații web interactive. Pachetul este minunat, deoarece vă permite să creați vizualizări și rapoarte extrem de eficiente bazate pe seturile de date disponibile. În afară de utilizarea elementelor Shiny, puteți folosi și elementele HTML pentru a personaliza conținutul aplicației.

Chiar dacă Shiny este un instrument destul de puternic, veți găsi că este destul de ușor de învățat dacă sunteți conștient de programarea în R. Este foarte recomandat să învățați R Shiny dacă vă gândiți să adăugați ceva creativ în portofoliul dvs.