Artikel

R SHINY APPS

R Shiny Apps

R ist eine dynamische und funktionale Programmiersprache, die als Teil des sogenannten GNU-Projektes frei und öffentlich zur Verfügung steht. Die Sprache hat eine breite Community; Millionen von Nutzern arbeiten permanent an einer Verbesserung des Codes. Seit den Anfängen von R in den frühen 90er Jahren entstanden so zahlreiche frei verfügbare Pakete, deren Funktionen statistische Analysen mit sehr übersichtlichem Code ermöglichen. Insbesondere Machine Learning-Verfahren können so deutlich schneller umgesetzt werden, als das beispielsweise mit Python der Fall ist.

Eines der spannendsten Frameworks der letzten Jahre ist das Paket Shiny. Die Funkionen-​Sammlung ermöglicht das einfache Erstellen interaktiver Web-​Applikationen zur Datenauswertung. Dabei können alle in R nutzbaren statistischen und mathematischen Funktionen verwendet und einem nicht mit R-​Syntax vertrauten Nutzer zur Verfügung gestellt werden.

Mit Shiny zur interaktiven Web-App

Tauchen wir kurz in die Shiny zugrundeliegende Logik ab. Jede Shiny App besteht aus zwei Komponenten: Einem User Interface Objekt und einer Server Funktion. Im User Interface Objekt können Input-​Variablen gewählt werden. Der Nutzer kann hier mithilfe von Schiebereglern, Drop-​Down-Menüs und weiteren interaktiven Elementen den Datensatz eingrenzen oder Analyse-​Tools auswählen. Die gewählten Input-​Variablen werden an die Server-​Funktion übergeben. Diese Funktionen definieren, wie die Input-​Variablen genutzt werden sollen. So können statistische Methoden in die Server-​Funktion eingebettet werden, welche Entscheidungsbäume oder neuronale Netzwerke erstellen. Es ist aber auch möglich in der Server-​Funktion die grafischen Fähigkeiten von R zu nutzen, damit der User anhand der ausgewählten Input-​Variablen ein interaktives Dashboard erstellen kann.

Mit den oben genannten Input Variablen lassen sich Daten auswählen, die als Datensätze in der App hinterlegt sind. Aber auch das Hochladen von Datensätzen im User Interface ist möglich. Hier muss der Ersteller der App jedoch die Aufbereitung der Daten in der Server Funktion genau definieren. Dieser Schritt ist essentiell, denn sonst sieht der Nutzer anstelle der gewünschten Diagramme oder KPIs bloß Fehlermeldungen. Auch das Umformen der ausgewählten Input-​Variablen, in für die Methoden der Server Funktion nutzbare Daten, stellt den Ersteller der Shiny App gelegentlich vor Herausforderungen. Hier müssen alle möglichen Varianten durchdacht werden, die durch die interaktive Nutzung entstehen können.

Brücke zwischen R-Code und Kunde

Wozu also das Ganze? Das Erstellen von Dashboards mit Power BI oder Tableau ist zweifelsohne einfacher und diese sehen mit nur wenigen Klicks ansprechender aus als das bei Shiny der Fall ist. Nichtsdestotrotz hat Shiny seine Berechtigung: Die Vielzahl der mathematisch-​statistischen Funktionen aus R lassen sich durch Shiny auch vom statistisch nicht bewanderten User nutzen. Damit eignet sich Shiny als ideale Lösung, um elaborierte Machine Learning-​Verfahren und deren Ergebnisse in Settings wie z. B. einer Kundenpräsentation anschaulich darzustellen. Shiny kann für den BI-​Consultant also eine Brücke zwischen R-Code und Kunde sein.

Sie möchten mehr Informationen zu R Shiny Apps erhalten?