Skip to content
Snippets Groups Projects
Select Git revision
  • 35becfa57b136c48bbcf40ca1daae962e48f5eb6
  • master default
  • KAT-77-TEST
  • newBranchTEST
  • newBranch
  • KAT-50
6 results

triage_data.dart

Blame
  • Forked from an inaccessible project.
    Code owners
    Assign users and groups as approvers for specific file changes. Learn more.
    tutorial_page.html 186.23 KiB
    <!DOCTYPE html>
    
    <html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
    
    <head>
    
    <meta charset="utf-8">
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <meta name="generator" content="pandoc" />
    
    
    
    <meta name="progressive" content="false" />
    <meta name="allow-skip" content="false" />
    <meta name="learnr-version-prerender" content="0.11.5" />
    
    <title>Data Science Tutorial</title>
    
    <!-- header-includes START -->
    <!-- HEAD_CONTENT -->
    <!-- header-includes END -->
    <!-- HEAD_CONTENT -->
    
    <!-- highlightjs -->
    <style type="text/css">code{white-space: pre;}</style>
    <style type="text/css">
      pre:not([class]) {
        background-color: white;
      }
    </style>
    <script type="text/javascript">
    if (window.hljs) {
      hljs.configure({languages: []});
      hljs.initHighlightingOnLoad();
      if (document.readyState && document.readyState === "complete") {
        window.setTimeout(function() { hljs.initHighlighting(); }, 0);
      }
    }
    </script>
    
    
    <!-- taken from https://github.com/rstudio/rmarkdown/blob/de8a9c38618903627ca509f5401d50a0876079f7/inst/rmd/h/default.html#L293-L343 -->
    <!-- tabsets -->
    <style type="text/css">
    .tabset-dropdown > .nav-tabs {
      display: inline-table;
      max-height: 500px;
      min-height: 44px;
      overflow-y: auto;
      border: 1px solid #ddd;
      border-radius: 4px;
    }
    
    .tabset-dropdown > .nav-tabs > li.active:before {
      content: "";
      font-family: 'Glyphicons Halflings';
      display: inline-block;
      padding: 10px;
      border-right: 1px solid #ddd;
    }
    
    .tabset-dropdown > .nav-tabs.nav-tabs-open > li.active:before {
      content: "&#xe258;";
      border: none;
    }
    
    .tabset-dropdown > .nav-tabs.nav-tabs-open:before {
      content: "";
      font-family: 'Glyphicons Halflings';
      display: inline-block;
      padding: 10px;
      border-right: 1px solid #ddd;
    }
    
    .tabset-dropdown > .nav-tabs > li.active {
      display: block;
    }
    
    .tabset-dropdown > .nav-tabs > li > a,
    .tabset-dropdown > .nav-tabs > li > a:focus,
    .tabset-dropdown > .nav-tabs > li > a:hover {
      border: none;
      display: inline-block;
      border-radius: 4px;
      background-color: transparent;
    }
    
    .tabset-dropdown > .nav-tabs.nav-tabs-open > li {
      display: block;
      float: none;
    }
    
    .tabset-dropdown > .nav-tabs > li {
      display: none;
    }
    </style>
    <!-- end tabsets -->
    
    
    </head>
    
    <body>
    <a class='sr-only sr-only-focusable visually-hidden-focusable' href='#learnr-tutorial-content'>Skip to Tutorial Content</a>
    
    
    
    <div class="pageContent band">
    <main class="bandContent page">
    
    <article class="topics" id="learnr-tutorial-content">
    
    <div id="section-datenbasis" class="section level2">
    <h2>Datenbasis</h2>
    <div id="section-datenherkunft" class="section level3">
    <h3>Datenherkunft</h3>
    <p>In diesem Praktikum verwenden wir das Dataset “Board Games Analysis
    🎲🎲🎯”. Die Daten wurden ursprünglich aus der BoardGameGeek-Datenbank
    extrahiert und anschließend auf Kaggle hochgeladen, wo sie zu einem
    Datensatz zusammengeführt wurden.</p>
    <p>Link zum Notebook auf Kaggle: <a
    href="https://www.kaggle.com/code/karnikakapoor/board-games-analysis"
    class="uri">https://www.kaggle.com/code/karnikakapoor/board-games-analysis</a><br />
    Link zum Datensatz auf Kaggle: <a
    href="https://www.kaggle.com/code/karnikakapoor/board-games-analysis/input"
    class="uri">https://www.kaggle.com/code/karnikakapoor/board-games-analysis/input</a></p>
    </div>
    <div id="section-inhalt" class="section level3">
    <h3>Inhalt</h3>
    <p>Der Datensatz umfasst 20.343 Einträge und enthält verschiedene
    Informationen zu Brettspielen. Hier sind die Spalten und ihre jeweiligen
    Inhalte:</p>
    <p><strong>ID</strong>: Eine eindeutige Identifikationsnummer für jedes
    Brettspiel im Datensatz.<em>(Integer)</em><br />
    <strong>Name:</strong> Der Name des Brettspiels.<em>(String)</em><br />
    <strong>Year:</strong> Das Jahr, in dem das Brettspiel veröffentlicht
    wurde.<em>(Integer)</em><br />
    <strong>Published:</strong> Informationen über die Veröffentlichung des
    Spiels.<em>(Integer)</em><br />
    <strong>Min Players:</strong> Die minimale Anzahl von Spielern, die das
    Spiel spielen können.<em>(Integer)</em><br />
    <strong>Max Players:</strong> Die maximale Anzahl von Spielern, die das
    Spiel unterstützt.<em>(Integer)</em><br />
    <strong>Play Time:</strong> Die durchschnittliche Spielzeit des
    Brettspiels.<em>(Integer)</em><br />
    <strong>Min Age:</strong> Die empfohlene minimale Altersgruppe für
    Spieler des Spiels.<em>(Integer)</em><br />
    <strong>Users Rated:</strong> Die Anzahl der Benutzer, die das Spiel
    bewertet haben.<em>(Double)</em><br />
    <strong>Rating Average:</strong> Der durchschnittliche Bewertungswert
    des Spiels durch Benutzer.<em>(Double)</em><br />
    <strong>BGG Rank:</strong> Die Rangposition des Spiels auf
    BoardGameGeek.<em>(Integer)</em><br />
    <strong>Complexity Average:</strong> Der durchschnittliche
    Schwierigkeitsgrad des Spiels.<em>(Double)</em><br />
    <strong>Owned Users:</strong> Die Anzahl der Benutzer, die das Spiel
    besitzen.<em>(Integer)</em><br />
    <strong>Mechanics:</strong> Informationen über die Spielmechanismen, die
    im Brettspiel verwendet werden.<em>(String)</em><br />
    <strong>Domains:</strong> Die Domänen oder Kategorien, zu denen das
    Brettspiel gehört.<em>(String)</em><br />
    </p>
    <p>Diese Spalten bieten eine breite Palette von Informationen über die
    charakteristischen Merkmale, Bewertungen und Eigenschaften der
    aufgeführten Brettspiele im Datensatz. Die Daten können für Analysen und
    Erkenntnisse im Bereich der Brettspielindustrie sowie für die
    Beurteilung von Präferenzen und Trends unter den Spielern verwendet
    werden.</p>
    </div>
    <div id="section-hypothesen" class="section level3">
    <h3>Hypothesen</h3>
    <p>Wir haben zwei Hypothesen formuliert, die wir im
    “Datenanalyse”-Abschnitt testen werden.</p>
    <p><strong>Hypothese 1:</strong> Spiele mit höheren Complexity Score
    haben niedriger anzahl von Owned Users.</p>
    <p><strong>Hypothese 2:</strong> Spiele mit höheren Complexity Score
    haben höhere Play Time.</p>
    </div>
    </div>
    <div id="section-datenaufbereitung" class="section level2">
    <h2>Datenaufbereitung</h2>
    <div id="section-einlesen-von-daten" class="section level3">
    <h3>Einlesen von Daten</h3>
    <p>Um Datensätze mit R zu analysieren, mussen diese zuerst eingelesen
    werden. Je nach Struktur des Datenfiles kommen verschiedene
    Einlese-Befehle zur Anwendung. Es können u.a. Textfiles (.txt, .dat),
    Datenfiles (.csv) und Excel-Files eingelesen werden.</p>
    <div id="section-xlsx-dateien-in-r-importieren" class="section level4">
    <h4>XLSX-Dateien in R importieren</h4>
    <p>In diesem Tutorial benutzen wir eine .xlsx Datei, die wir einlesen
    müssen. XLSX-Dateien lassen sich aus Excel heraus speichern und sind
    heutzutage weit verbreitet.</p>
    <p>Für diese Aufgabe bietet sich das readxl-Paket an, das am einfachsten
    mit den folgenden Befehlen installiert und geladen wird:</p>
    <div class="tutorial-exercise" data-label="install-readxl"
    data-completion="1" data-diagnostics="1" data-startover="1"
    data-lines="0" data-pipe="|&gt;">
    <pre class="text"><code>install.packages(&quot;readxl&quot;)
    library (readxl)</code></pre>
    <script type="application/json" data-ui-opts="1">{"engine":"r","has_checker":false,"caption":"<span data-i18n=\"text.enginecap\" data-i18n-opts=\"{&quot;engine&quot;:&quot;R&quot;}\">R Code<\/span>"}</script>
    </div>
    <p>Der Package ist schonmal installiert und wird verwendet, deswegen
    lässt R nicht zu, dass es wieder installiert wird.</p>
    <p>Wir jetzt können unser Datensatz einlesen:</p>
    <div class="tutorial-exercise" data-label="read-data"
    data-completion="1" data-diagnostics="1" data-startover="1"
    data-lines="0" data-pipe="|&gt;">
    <pre class="text"><code>gameData &lt;- read_excel(&quot;bgg_dataset.xlsx&quot;, sheet = &quot;Sheet&quot;)</code></pre>
    <script type="application/json" data-ui-opts="1">{"engine":"r","has_checker":false,"caption":"<span data-i18n=\"text.enginecap\" data-i18n-opts=\"{&quot;engine&quot;:&quot;R&quot;}\">R Code<\/span>"}</script>
    </div>
    <p>Aufgrund der Arbeitsverzeichnis funktioniert leider diese Funktion in
    diesem Dokument nicht, aber keine Sorge, wir haben sie im Hintergrund
    genauso wie hier benutzt.</p>
    <p>Wir können jetzt unsere Daten benutzen:</p>
    <div class="tutorial-exercise" data-label="show-data"
    data-completion="1" data-diagnostics="1" data-startover="1"
    data-lines="0" data-pipe="|&gt;">
    <pre class="text"><code>gameData</code></pre>
    <script type="application/json" data-ui-opts="1">{"engine":"r","has_checker":false,"caption":"<span data-i18n=\"text.enginecap\" data-i18n-opts=\"{&quot;engine&quot;:&quot;R&quot;}\">R Code<\/span>"}</script>
    </div>
    <p>Wir werden aber häufig nicht mit dem gesamten Datensatz arbeiten,
    sondern nur mit einigen Spalten. Nur eine Spalte aus dem Datensatz lässt
    sich wie folgt lesen:</p>
    <div class="tutorial-exercise" data-label="read-column"
    data-completion="1" data-diagnostics="1" data-startover="1"
    data-lines="0" data-pipe="|&gt;">
    <pre class="text"><code>gameData$`Year Published`</code></pre>
    <script type="application/json" data-ui-opts="1">{"engine":"r","has_checker":false,"caption":"<span data-i18n=\"text.enginecap\" data-i18n-opts=\"{&quot;engine&quot;:&quot;R&quot;}\">R Code<\/span>"}</script>
    </div>
    </div>
    <div id="section-zeit-zum-üben" class="section level4">
    <h4>Zeit zum üben!</h4>
    <p>Schreiben Sie den Code, um die Spalte <code>Mechanics</code> zu
    lesen:</p>
    <div class="tutorial-exercise" data-label="read-mechanics-column"
    data-completion="1" data-diagnostics="1" data-startover="1"
    data-lines="0" data-pipe="|&gt;">
    <script type="application/json" data-ui-opts="1">{"engine":"r","has_checker":false,"caption":"<span data-i18n=\"text.enginecap\" data-i18n-opts=\"{&quot;engine&quot;:&quot;R&quot;}\">R Code<\/span>"}</script>
    </div>
    <div class="tutorial-exercise-support"
    data-label="read-mechanics-column-hint" data-completion="1"
    data-diagnostics="1" data-startover="1" data-lines="0"
    data-pipe="|&gt;">
    <pre class="text"><code>gameData$`Mechanics`</code></pre>
    </div>
    <p><em>Wie Sie weitere Dateientypen einlesen und benutzen können, finden
    Sie in diesem <a
    href="https://bjoernwalther.com/daten-in-r-importieren/">Tutorial von
    Björn Walther</a></em></p>
    </div>
    </div>
    <div id="section-leerstellen-beheben" class="section level3">
    <h3>Leerstellen beheben</h3>
    <p>Das Beheben von Leerstellen in R Studio erfordert spezifische
    Schritte, die je nach Art der Daten und der Art der Probleme variieren
    können.</p>
    <div id="section-in-einer-bestimmten-spalte" class="section level4">
    <h4>In einer bestimmten Spalte:</h4>
    <div class="tutorial-exercise" data-label="remove-empties-column"
    data-completion="1" data-diagnostics="1" data-startover="1"
    data-lines="0" data-pipe="|&gt;">
    <pre class="text"><code>gameData$`Year Published` &lt;- trimws(gameData$`Year Published`)
    gameData$`Year Published`</code></pre>
    <script type="application/json" data-ui-opts="1">{"engine":"r","has_checker":false,"caption":"<span data-i18n=\"text.enginecap\" data-i18n-opts=\"{&quot;engine&quot;:&quot;R&quot;}\">R Code<\/span>"}</script>
    </div>
    </div>
    <div id="section-in-allen-spalten" class="section level4">
    <h4>In allen Spalten:</h4>
    <div class="tutorial-exercise" data-label="remove-empties"
    data-completion="1" data-diagnostics="1" data-startover="1"
    data-lines="0" data-pipe="|&gt;">
    <pre class="text"><code>gameData &lt;- lapply(gameData, trimws)
    gameData</code></pre>
    <script type="application/json" data-ui-opts="1">{"engine":"r","has_checker":false,"caption":"<span data-i18n=\"text.enginecap\" data-i18n-opts=\"{&quot;engine&quot;:&quot;R&quot;}\">R Code<\/span>"}</script>
    </div>
    <p>In unserem Dataset scheint alles gut zu sein, deswegen haben wir
    keine Änderungen nach Ausführung den Befehlen.</p>
    </div>
    </div>
    <div id="section-inkonsistenzen-beheben" class="section level3">
    <h3>Inkonsistenzen beheben</h3>
    <p>In einem Datensatz beziehen sich Inkonsistenzen auf Unstimmigkeiten,
    Widersprüche oder Fehler, die in den Daten vorhanden sind und
    möglicherweise die Qualität der Daten beeinträchtigen. Die unterstehende
    Befehle helfen uns, diese zu Inkonsistenzen zu beheben.</p>
    <div id="section-standardisierung-der-schreibweise"
    class="section level4">
    <h4>Standardisierung der Schreibweise:</h4>
    <div class="tutorial-exercise" data-label="to-lowercase-column"
    data-completion="1" data-diagnostics="1" data-startover="1"
    data-lines="0" data-pipe="|&gt;">
    <pre class="text"><code>gameData$`Mechanics` &lt;- tolower(gameData$`Mechanics`)
    gameData$`Mechanics`</code></pre>
    <script type="application/json" data-ui-opts="1">{"engine":"r","has_checker":false,"caption":"<span data-i18n=\"text.enginecap\" data-i18n-opts=\"{&quot;engine&quot;:&quot;R&quot;}\">R Code<\/span>"}</script>
    </div>
    <p>Somit wurden alle Zeichenketten in der Spalte “Mechanics” in
    Kleinbuchstaben umgewandelt.</p>
    </div>
    <div id="section-ersetzen-von-werten" class="section level4">
    <h4>Ersetzen von Werten:</h4>
    <div class="tutorial-exercise" data-label="replace-variable"
    data-completion="1" data-diagnostics="1" data-startover="1"
    data-lines="0" data-pipe="|&gt;">
    <pre class="text"><code>gameData$`Mechanics` &lt;- gsub(&quot;Action&quot;, &quot;!!!ACTION!!!&quot;, gameData$`Mechanics`)
    gameData$`Mechanics`</code></pre>
    <script type="application/json" data-ui-opts="1">{"engine":"r","has_checker":false,"caption":"<span data-i18n=\"text.enginecap\" data-i18n-opts=\"{&quot;engine&quot;:&quot;R&quot;}\">R Code<\/span>"}</script>
    </div>
    <p>Somit haben wir alle treffer für “Action” mit “!!!ACTION!!!”
    ersetzt.</p>
    </div>
    <div id="section-behandlung-von-fehlenden-werten"
    class="section level4">
    <h4>Behandlung von fehlenden Werten:</h4>
    <div class="tutorial-exercise" data-label="replace-missing-variable"
    data-completion="1" data-diagnostics="1" data-startover="1"
    data-lines="0" data-pipe="|&gt;">
    <pre class="text"><code>gameData$`Rating Average`[is.na(gameData$`Rating Average`)] &lt;- mean(gameData$`Rating Average`, na.rm = TRUE)</code></pre>
    <script type="application/json" data-ui-opts="1">{"engine":"r","has_checker":false,"caption":"<span data-i18n=\"text.enginecap\" data-i18n-opts=\"{&quot;engine&quot;:&quot;R&quot;}\">R Code<\/span>"}</script>
    </div>
    <p>Dieser Befehl ersetzt fehlende Werte durch der Median der vorhandenen
    Werten in der Spalte. Was der Median ist, finden Sie in dem nächsten
    Abschnitt über Datenanalyse.</p>
    </div>
    <div id="section-entfernen-von-duplikaten" class="section level4">
    <h4>Entfernen von Duplikaten</h4>
    <p>Dieser Befehl entfernt Duplikaten basierend auf allen Spalten. Wir
    haben aber in unserem Datensatz keine Duplikaten.<br />
    Zum Veranschaulichen, benutzen wir ein Vector.</p>
    <div class="tutorial-exercise" data-label="remove-duplicates"
    data-completion="1" data-diagnostics="1" data-startover="1"
    data-lines="0" data-pipe="|&gt;">
    <pre class="text"><code>vector &lt;- c(1, 2, 3, 3, 5, 2, 1, 7, 10, 5)
    vector &lt;- unique(vector)
    
    vector</code></pre>
    <script type="application/json" data-ui-opts="1">{"engine":"r","has_checker":false,"caption":"<span data-i18n=\"text.enginecap\" data-i18n-opts=\"{&quot;engine&quot;:&quot;R&quot;}\">R Code<\/span>"}</script>
    </div>
    </div>
    <div id="section-behandlung-von-sonderzeichen" class="section level4">
    <h4>Behandlung von Sonderzeichen</h4>
    <div class="tutorial-exercise" data-label="replace-special-chars"
    data-completion="1" data-diagnostics="1" data-startover="1"
    data-lines="0" data-pipe="|&gt;">
    <pre class="text"><code>gameData$`Mechanics` &lt;- gsub(&quot;[^a-zA-Z0-9 ]&quot;, &quot;&quot;, gameData$`Mechanics`)
    gameData$`Mechanics`</code></pre>
    <script type="application/json" data-ui-opts="1">{"engine":"r","has_checker":false,"caption":"<span data-i18n=\"text.enginecap\" data-i18n-opts=\"{&quot;engine&quot;:&quot;R&quot;}\">R Code<\/span>"}</script>
    </div>
    <p>Dieser Befehl entfernt Sonderzeichen in der Spalte “Mechanics”. In
    diesem Fall sind Characters, die nicht eine Buchstabe oder Ziffer sind,
    entfernt worden (auch die Kommas).</p>
    </div>
    <div id="section-notice" class="section level4">
    <h4>Notice</h4>
    <p>Diese Beispiele sind allgemeiner Natur, und Sie sollten sie an Ihre
    spezifischen Daten und Probleme anpassen. Inkonsistenzen und Leerstellen
    können in verschiedenen Formen auftreten, und es ist wichtig, die
    geeigneten Methoden für Ihre speziellen Daten anzuwenden. Beachten Sie
    auch, dass Datenbereinigung oft datenabhängig ist, und eine gründliche
    Analyse der Daten ist vor der Bereinigung ratsam.</p>
    </div>
    </div>
    <div
    id="section-jetzt-sind-sie-dran-testen-sie-was-sie-in-diesem-abschnitt-über-daten-einlesen-gelernt-haben"
    class="section level3">
    <h3>Jetzt sind Sie dran! Testen Sie was Sie in diesem Abschnitt über
    Daten einlesen gelernt haben:</h3>
    <div class="panel-heading tutorial-quiz-title"><span data-i18n="text.quiz">Quiz</span></div>
    <div class="panel panel-default tutorial-question-container">
    <div data-label="second-quiz-1" class="tutorial-question panel-body">
    <div id="second-quiz-1-answer_container" class="shiny-html-output"></div>
    <div id="second-quiz-1-message_container" class="shiny-html-output"></div>
    <div id="second-quiz-1-action_button_container" class="shiny-html-output"></div>
    <script>if (Tutorial.triggerMathJax) Tutorial.triggerMathJax()</script>
    </div>
    </div>
    <div class="panel panel-default tutorial-question-container">
    <div data-label="second-quiz-2" class="tutorial-question panel-body">
    <div id="second-quiz-2-answer_container" class="shiny-html-output"></div>
    <div id="second-quiz-2-message_container" class="shiny-html-output"></div>
    <div id="second-quiz-2-action_button_container" class="shiny-html-output"></div>
    <script>if (Tutorial.triggerMathJax) Tutorial.triggerMathJax()</script>
    </div>
    </div>
    <div class="panel panel-default tutorial-question-container">
    <div data-label="second-quiz-3" class="tutorial-question panel-body">
    <div id="second-quiz-3-answer_container" class="shiny-html-output"></div>
    <div id="second-quiz-3-message_container" class="shiny-html-output"></div>
    <div id="second-quiz-3-action_button_container" class="shiny-html-output"></div>
    <script>if (Tutorial.triggerMathJax) Tutorial.triggerMathJax()</script>
    </div>
    </div>
    <div class="panel panel-default tutorial-question-container">
    <div data-label="second-quiz-4" class="tutorial-question panel-body">
    <div id="second-quiz-4-answer_container" class="shiny-html-output"></div>
    <div id="second-quiz-4-message_container" class="shiny-html-output"></div>
    <div id="second-quiz-4-action_button_container" class="shiny-html-output"></div>
    <script>if (Tutorial.triggerMathJax) Tutorial.triggerMathJax()</script>
    </div>
    </div>
    </div>
    </div>
    <div id="section-datenanalyse" class="section level2">
    <h2>Datenanalyse</h2>
    In diesem Teil wird beschrieben, wie man verschiedene Daten mit
    Funktionen ermitteln kann.<br />
    Hierfuer sollte man sich die Daten erneut anschauen.<br />
    Fuer diesen Teil ist es wichtig zu wissen, wie man auf eine Spalte
    zugreifen kann. Dies macht man in dem man die Variable in dem der
    Datensatz gespeichert ist (hier gameData) angibt und den Spaltennamen in
    entweder zwei eckigen Klammern oder hinter einem $ Zeichen
    definiert.<br />
    Die Syntax waere dann beispielsweise:<br />
    <code>data[["column"]])</code> oder <code>data$column</code>, bzw.
    <code>data$"spaced column name"</code><br />
    <br />
    Die Tabelle unten zeigt alle Daten aus dem Datensatz. Mit den Pfeilen in
    der oberen Reihe kann man die durch die Spalten schalten.
    <div data-pagedtable="false">
    <script data-pagedtable-source type="application/json">
    {"columns":[{"label":["ID"],"name":[1],"type":["dbl"],"align":["right"]},{"label":["Name"],"name":[2],"type":["chr"],"align":["left"]},{"label":["Year Published"],"name":[3],"type":["dbl"],"align":["right"]},{"label":["Min Players"],"name":[4],"type":["dbl"],"align":["right"]},{"label":["Max Players"],"name":[5],"type":["dbl"],"align":["right"]},{"label":["Play Time"],"name":[6],"type":["dbl"],"align":["right"]},{"label":["Min Age"],"name":[7],"type":["dbl"],"align":["right"]},{"label":["Users Rated"],"name":[8],"type":["dbl"],"align":["right"]},{"label":["Rating Average"],"name":[9],"type":["dbl"],"align":["right"]},{"label":["BGG Rank"],"name":[10],"type":["dbl"],"align":["right"]},{"label":["Complexity Average"],"name":[11],"type":["dbl"],"align":["right"]},{"label":["Owned Users"],"name":[12],"type":["dbl"],"align":["right"]},{"label":["Mechanics"],"name":[13],"type":["chr"],"align":["left"]},{"label":["Domains"],"name":[14],"type":["chr"],"align":["left"]}],"data":[{"1":"174430","2":"Gloomhaven","3":"2017","4":"1","5":"4","6":"120","7":"14","8":"42055","9":"8.79","10":"1","11":"3.86","12":"68323","13":"Action Queue, Action Retrieval, Campaign / Battle Card Driven, Card Play Conflict Resolution, Communication Limits, Cooperative Game, Deck Construction, Deck Bag and Pool Building, Grid Movement, Hand Management, Hexagon Grid, Legacy Game, Modular Board, Once-Per-Game Abilities, Scenario / Mission / Campaign Game, Simultaneous Action Selection, Solo / Solitaire Game, Storytelling, Variable Player Powers","14":"Strategy Games, Thematic Games"},{"1":"161936","2":"Pandemic Legacy: Season 1","3":"2015","4":"2","5":"4","6":"60","7":"13","8":"41643","9":"8.61","10":"2","11":"2.84","12":"65294","13":"Action Points, Cooperative Game, Hand Management, Legacy Game, Point to Point Movement, Set Collection, Trading, Variable Player Powers","14":"Strategy Games, Thematic Games"},{"1":"224517","2":"Brass: Birmingham","3":"2018","4":"2","5":"4","6":"120","7":"14","8":"19217","9":"8.66","10":"3","11":"3.91","12":"28785","13":"Hand Management, Income, Loans, Market, Network and Route Building, Score-and-Reset Game, Tech Trees / Tech Tracks, Turn Order: Stat-Based, Variable Set-up","14":"Strategy Games"},{"1":"167791","2":"Terraforming Mars","3":"2016","4":"1","5":"5","6":"120","7":"12","8":"64864","9":"8.43","10":"4","11":"3.24","12":"87099","13":"Card Drafting, Drafting, End Game Bonuses, Hand Management, Hexagon Grid, Income, Set Collection, Solo / Solitaire Game, Take That, Tile Placement, Turn Order: Progressive, Variable Player Powers","14":"Strategy Games"},{"1":"233078","2":"Twilight Imperium: Fourth Edition","3":"2017","4":"3","5":"6","6":"480","7":"14","8":"13468","9":"8.70","10":"5","11":"4.22","12":"16831","13":"Action Drafting, Area Majority / Influence, Area-Impulse, Dice Rolling, Follow, Grid Movement, Hexagon Grid, Modular Board, Trading, Variable Phase Order, Variable Player Powers, Voting","14":"Strategy Games, Thematic Games"},{"1":"291457","2":"Gloomhaven: Jaws of the Lion","3":"2020","4":"1","5":"4","6":"120","7":"14","8":"8392","9":"8.87","10":"6","11":"3.55","12":"21609","13":"Action Queue, Campaign / Battle Card Driven, Communication Limits, Cooperative Game, Critical Hits and Failures, Deck Construction, Grid Movement, Hand Management, Hexagon Grid, Legacy Game, Line of Sight, Once-Per-Game Abilities, Scenario / Mission / Campaign Game, Simultaneous Action Selection, Solo / Solitaire Game, Variable Player Powers","14":"Strategy Games, Thematic Games"}],"options":{"columns":{"min":{},"max":[10]},"rows":{"min":[10],"max":[10]},"pages":{}}}
      </script>
    </div>
    <p><br />
    </p>
    <div id="section-mittelwert" class="section level3">
    <h3>Mittelwert</h3>
    Der Mittelwert bestimmt den Durchschnitt aller gegebenen Werte. Die
    Rechnung dafuer ist:<br />
    <span class="math inline">\((x_{1} + x_{2} + \cdots + x_{n}) /
    x\)</span><br />
    <br />
    Um den Mittelwert einer Spalte zu bestimmen, vewendet man die ‘mean()’
    Funktion verwenden. In diese setzt man die Variable in der die Daten
    gespeichert sind (gameData) und gibt die gewuenschte Spalte an.<br />
    <br />
    Bestimmen Sie den Mittelwert von “Play Time”.
    <div class="tutorial-exercise" data-label="mean" data-completion="1"
    data-diagnostics="1" data-startover="1" data-lines="0"
    data-pipe="|&gt;">
    <script type="application/json" data-ui-opts="1">{"engine":"r","has_checker":false,"caption":"<span data-i18n=\"text.enginecap\" data-i18n-opts=\"{&quot;engine&quot;:&quot;R&quot;}\">R Code<\/span>"}</script>
    </div>
    <p>Sie sollten hier den Wert 99.884 bekommen.<br />
    </p>
    </div>
    <div id="section-median" class="section level3">
    <h3>Median</h3>
    Der Median ist der Mittelpunkt aller gegebenen Werte.<br />
    <br />
    Der Median wird durch die ‘median()’ Funktion bestimmt.<br />
    Da das schreiben von <code>gameData[["Play Time"]]</code> etwas dauert,
    kann man ab hier die Variable ‘ptime’ verwenden.<br />
    Bestimmen Sie den Median von “Play Time”.
    <div class="tutorial-exercise" data-label="median" data-completion="1"
    data-diagnostics="1" data-startover="1" data-lines="0"
    data-pipe="|&gt;">
    <pre class="text"><code>ptime &lt;- gameData[[&quot;Play Time&quot;]]</code></pre>
    <script type="application/json" data-ui-opts="1">{"engine":"r","has_checker":false,"caption":"<span data-i18n=\"text.enginecap\" data-i18n-opts=\"{&quot;engine&quot;:&quot;R&quot;}\">R Code<\/span>"}</script>
    </div>
    <p>Sie sollten hier den Wert 90 bekommen.<br />
    </p>
    </div>
    <div id="section-varianz" class="section level3">
    <h3>Varianz</h3>
    Die Varianz bestimmt die Verteilung um den Mittelwert.<br />
    <br />
    Die Varianz wird durch die ‘var()’ Funktion bestimmt.<br />
    Bestimmen sie die Varianz von “Play Time”.
    <div class="tutorial-exercise" data-label="variance" data-completion="1"
    data-diagnostics="1" data-startover="1" data-lines="0"
    data-pipe="|&gt;">
    <pre class="text"><code>ptime &lt;- gameData$&quot;Play Time&quot;</code></pre>
    <script type="application/json" data-ui-opts="1">{"engine":"r","has_checker":false,"caption":"<span data-i18n=\"text.enginecap\" data-i18n-opts=\"{&quot;engine&quot;:&quot;R&quot;}\">R Code<\/span>"}</script>
    </div>
    <p>Sie sollten hier den Wert 6070.055 bekommen.<br />
    </p>
    </div>
    <div id="section-standardabweichung" class="section level3">
    <h3>Standardabweichung</h3>
    Die Standardabweichung bestimmt die Wurzel Verteilung um den
    Mittelwert.<br />
    <br />
    Die Varianz wird durch die ‘sd()’ Funktion bestimmt.<br />
    Bestimmen sie die Standardabweichung von “Play Time”.
    <div class="tutorial-exercise" data-label="standard-deviation"
    data-completion="1" data-diagnostics="1" data-startover="1"
    data-lines="0" data-pipe="|&gt;">
    <pre class="text"><code>ptime &lt;- gameData$&quot;Play Time&quot;</code></pre>
    <script type="application/json" data-ui-opts="1">{"engine":"r","has_checker":false,"caption":"<span data-i18n=\"text.enginecap\" data-i18n-opts=\"{&quot;engine&quot;:&quot;R&quot;}\">R Code<\/span>"}</script>
    </div>
    <p>Sie sollten hier den Wert 77.91056 bekommen.<br />
    </p>
    </div>
    <div id="section-lineare-regression" class="section level3">
    <h3>Lineare Regression</h3>
    Die Lineare Regression bestimmt das Verhaeltnis zwischen zwei
    Werten(-sets).<br />
    <br />
    Die Varianz wird durch die ‘lm()’ Funktion bestimmt Hier uebergibt man
    Daten welche mit einem Tilde-Symbol (~) verbunden sind, also
    beispielsweise <code>lm(x~y)</code>.<br />
    Bestimmen sie die Lineare Regression mit “Users Rated” im Verhaeltnis zu
    “Owned Users”.
    <div class="tutorial-exercise" data-label="linear-regression"
    data-completion="1" data-diagnostics="1" data-startover="1"
    data-lines="0" data-pipe="|&gt;">
    <pre class="text"><code>raters &lt;- gameData$&quot;Users Rated&quot;
    owned &lt;- gameData$&quot;Owned Users&quot;</code></pre>
    <script type="application/json" data-ui-opts="1">{"engine":"r","has_checker":false,"caption":"<span data-i18n=\"text.enginecap\" data-i18n-opts=\"{&quot;engine&quot;:&quot;R&quot;}\">R Code<\/span>"}</script>
    </div>
    <p>Falls man etwas mehr information will, kann man die Eingabe (oder die
    Variale in welche man dies gespeichert hat) noch in die
    <code>summary()</code> Funktion schreiben.<br />
    Weiterhin kann man dies auf ein Plot abbilden. Dazu verwendet man die
    <code>plot()</code> Funktion in welche man einen x und y Wert eingibt,
    zusammen mit Optionen wie das Plot aussehen soll. Mehr information dazu
    findet man <a
    href="https://www.rdocumentation.org/packages/graphics/versions/3.6.2/topics/plot">in
    der Dokumentation</a>.<br />
    Mit <code>abline()</code> kann man die Regressionslinie der lm Funktion
    abbilden. Dazu wird die lm Funktion, oder die Variable in der diese
    gespeichert ist, an <code>abline()</code> uebergeben.
    <img src="tutorial_page_files/figure-html/lm-plot-example-1.png" width="624" /></p>
    Versuchen Sie nun den oben gezeigten Plot selbst zu erstellen. Die Farbe
    und Parameter sind bereits vorgegeben.
    <div class="tutorial-exercise" data-label="lm-plot" data-completion="1"
    data-diagnostics="1" data-startover="1" data-lines="5"
    data-pipe="|&gt;">
    <pre class="text"><code>raters &lt;- gameData$&quot;Users Rated&quot;
    owned &lt;- gameData$&quot;Owned Users&quot;
    cavg &lt;- gameData$&quot;Complexity Average&quot;
    x = lm()
    plot(, , pch = 16, col = &quot;blue&quot;)</code></pre>
    <script type="application/json" data-ui-opts="1">{"engine":"r","has_checker":false,"caption":"<span data-i18n=\"text.enginecap\" data-i18n-opts=\"{&quot;engine&quot;:&quot;R&quot;}\">R Code<\/span>"}</script>
    </div>
    <p><br />
    </p>
    </div>
    <div id="section-hypothesentest" class="section level3">
    <h3>Hypothesentest</h3>
    <p>R hat Funktionen zum Testen von Hypothesen. Bei den bereits gegebenen
    Hypothesen eignet sich der <a
    href="https://www.rdocumentation.org/packages/stats/versions/3.6.2/topics/chisq.test">Chi-squared
    test</a>. Dieser wird mit <code>chisq.test()</code> aufgerufen und nimmt
    zwei Wertesets an mit weiteren Parametern fuer genaueres einstellen. Der
    ausgegebene p-Wert (p-value) kann dann mit dem Signifikanzwert
    (typischerweise 5% / 0.05) verglichen werden. Ist der Wert groesser als
    0.05 kann man annehmen, dass die Hypothese stimmt.</p>
    <div class="tutorial-exercise" data-label="hypothesis-test"
    data-completion="1" data-diagnostics="1" data-startover="1"
    data-lines="4" data-pipe="|&gt;">
    <pre class="text"><code>cavg &lt;- gameData$&quot;Complexity Average&quot;
    owned &lt;- gameData$&quot;Owned Users&quot;
    ptime &lt;- gameData$&quot;Play Time&quot;</code></pre>
    <script type="application/json" data-ui-opts="1">{"engine":"r","has_checker":false,"caption":"<span data-i18n=\"text.enginecap\" data-i18n-opts=\"{&quot;engine&quot;:&quot;R&quot;}\">R Code<\/span>"}</script>
    </div>
    <div class="panel-heading tutorial-quiz-title"><span data-i18n="text.quiz">Quiz</span></div>
    <div class="panel panel-default tutorial-question-container">
    <div data-label="hypothesis-quiz-1" class="tutorial-question panel-body">
    <div id="hypothesis-quiz-1-answer_container" class="shiny-html-output"></div>
    <div id="hypothesis-quiz-1-message_container" class="shiny-html-output"></div>
    <div id="hypothesis-quiz-1-action_button_container" class="shiny-html-output"></div>
    <script>if (Tutorial.triggerMathJax) Tutorial.triggerMathJax()</script>
    </div>
    </div>
    <div class="panel panel-default tutorial-question-container">
    <div data-label="hypothesis-quiz-2" class="tutorial-question panel-body">
    <div id="hypothesis-quiz-2-answer_container" class="shiny-html-output"></div>
    <div id="hypothesis-quiz-2-message_container" class="shiny-html-output"></div>
    <div id="hypothesis-quiz-2-action_button_container" class="shiny-html-output"></div>
    <script>if (Tutorial.triggerMathJax) Tutorial.triggerMathJax()</script>
    </div>
    </div>
    </div>
    </div>
    <div id="section-ergebnispräsentation" class="section level2">
    <h2>Ergebnispräsentation</h2>
    <p>In diesem Kapitel beschäftigen wir uns mit ausgewählten grafischen
    Darstellungsmöglichkeiten von Daten und wie man diese in RStudio
    erstellen kann.</p>
    <div id="section-streudiagramm" class="section level3">
    <h3>Streudiagramm</h3>
    <p>Ein Steudiagramm wird häufig verwendet, um einen Zusammenhang
    zwischen Variablen darzustellen. In RStudio kann man mit Hilfe des
    plot()-Befehls ein solches Streudiagramm erzeugen. Hier ein
    Beispiel:</p>
    <img src="tutorial_page_files/figure-html/plot-1.png" width="624" /><br />
    Der Code für dieses Streudiagramms ist grob zusammengefasst:<br />
    <br />
    <strong>plot(gameData[[“xxx”]],gameData[[“yyy”]],xlim=c(a,z))</strong><br />
    <br />
    Enthalten sind hier drei Parameter, die beiden Variablen und eine
    Begrenzung. Wobei xlim eine Begrenzung der x-Achse, und damit die
    Begrenzung der Werte von “xxx” darstellt, um ein genaueres Bild zu
    erhalten.<br />
    <br />
    <br />
    <br />
    Erstellen Sie nun anhand des Beispiels ein einfaches Streudiagramm
    welches den Zusammenhang zwischen “Min Age” und “Complexity Average”
    darstellt:
    <div class="tutorial-exercise" data-label="plotExercise"
    data-completion="1" data-diagnostics="1" data-startover="1"
    data-lines="0" data-pipe="|&gt;">
    <script type="application/json" data-ui-opts="1">{"engine":"r","has_checker":false,"caption":"<span data-i18n=\"text.enginecap\" data-i18n-opts=\"{&quot;engine&quot;:&quot;R&quot;}\">R Code<\/span>"}</script>
    </div>
    <div class="tutorial-exercise-support" data-label="plotExercise-hint"
    data-completion="1" data-diagnostics="1" data-startover="1"
    data-lines="0" data-pipe="|&gt;">
    <pre class="text"><code>plot(gameData[[&quot;Complexity Average&quot;]],gameData[[&quot;Min Age&quot;]])</code></pre>
    </div>
    <p><br />
    <br />
    </p>
    </div>
    <div id="section-boxplot-diagramm" class="section level3">
    <h3>Boxplot-Diagramm</h3>
    <p>Ein Boxplot ist ein Diagramm, dass verschiedene Lageparameter und
    Streuparameter abbildet und damit einen ersten groben Überblick über
    eine Verteilung gibt. Meistens verwendet man einen Boxplot um schnell
    eine Übersicht über Median, Quartile, Minimal- und Maximalwerte sowie
    Ausreißer zu erhalten.<br />
    Folgend ein Beispiel:
    <img src="tutorial_page_files/figure-html/ggplot-1.png" width="624" /><br />
    <br />
    Anhand des Beispiels nun ein kleines Quiz zur Verdeutlichung der
    Begrifflichkeiten:<br />
    </p>
    <div class="panel-heading tutorial-quiz-title"><span data-i18n="text.quiz">Quiz</span></div>
    <div class="panel panel-default tutorial-question-container">
    <div data-label="quiz-ggplot-1" class="tutorial-question panel-body">
    <div id="quiz-ggplot-1-answer_container" class="shiny-html-output"></div>
    <div id="quiz-ggplot-1-message_container" class="shiny-html-output"></div>
    <div id="quiz-ggplot-1-action_button_container" class="shiny-html-output"></div>
    <script>if (Tutorial.triggerMathJax) Tutorial.triggerMathJax()</script>
    </div>
    </div>
    <div class="panel panel-default tutorial-question-container">
    <div data-label="quiz-ggplot-2" class="tutorial-question panel-body">
    <div id="quiz-ggplot-2-answer_container" class="shiny-html-output"></div>
    <div id="quiz-ggplot-2-message_container" class="shiny-html-output"></div>
    <div id="quiz-ggplot-2-action_button_container" class="shiny-html-output"></div>
    <script>if (Tutorial.triggerMathJax) Tutorial.triggerMathJax()</script>
    </div>
    </div>
    <div class="panel panel-default tutorial-question-container">
    <div data-label="quiz-ggplot-3" class="tutorial-question panel-body">
    <div id="quiz-ggplot-3-answer_container" class="shiny-html-output"></div>
    <div id="quiz-ggplot-3-message_container" class="shiny-html-output"></div>
    <div id="quiz-ggplot-3-action_button_container" class="shiny-html-output"></div>
    <script>if (Tutorial.triggerMathJax) Tutorial.triggerMathJax()</script>
    </div>
    </div>
    <div class="panel panel-default tutorial-question-container">
    <div data-label="quiz-ggplot-4" class="tutorial-question panel-body">
    <div id="quiz-ggplot-4-answer_container" class="shiny-html-output"></div>
    <div id="quiz-ggplot-4-message_container" class="shiny-html-output"></div>
    <div id="quiz-ggplot-4-action_button_container" class="shiny-html-output"></div>
    <script>if (Tutorial.triggerMathJax) Tutorial.triggerMathJax()</script>
    </div>
    </div>
    <p><br />
    <br />
    Um ein Boxplot-Diagramm zu erstellen, muss man das ggplot2-package
    installiert haben, der grobe Syntax fürs Diagramm selbst sieht wiefolgt
    aus:<br />
    <strong>ggplot(gameData, aes(y = .data[[“xxx”]], group = .data[[“yyy”]],
    x = .data[[“yyy”]])) + geom_boxplot()</strong><br />
    <br />
    <br />
    <br />
    </p>
    </div>
    <div id="section-säulendiagramme" class="section level3">
    <h3>Säulendiagramme</h3>
    Das bekannte Säulendiagramm wird meistens verwendet um eine Veränderung
    im Laufe der Zeit zu zeigen. Mit Säulendiagrammen kann man Steigerung,
    Rückgang, Stagnation als auch eine Häufigkeitsverteilung deutlich
    zeigen. Um ein Säulendiagramm in R mit Häufigkeitsverteilung zu
    erhalten, gibt man den Befehl:<br />
    <br />
    <strong>barplot(table(gameData[[“xxx”]])</strong> ein und kann um die
    Achsen näher zu beschreiben noch **xlab=““** und
    <strong>ylab=””</strong> einfügen.<br />
    <br />
    Folgend ein Beispiel für ein Säulendiagramm mit
    Häufigkeitsverteilung:<br />
    <img src="tutorial_page_files/figure-html/barplot-1.png" width="624" /><br />
    <br />
    Geben Sie nun ein Säulendiagramm mit den Werten von”Complexity Average”
    und Achsenbeschriftung aus:<br />
    
    <div class="tutorial-exercise" data-label="barplotExercise"
    data-completion="1" data-diagnostics="1" data-startover="1"
    data-lines="0" data-pipe="|&gt;">
    <script type="application/json" data-ui-opts="1">{"engine":"r","has_checker":false,"caption":"<span data-i18n=\"text.enginecap\" data-i18n-opts=\"{&quot;engine&quot;:&quot;R&quot;}\">R Code<\/span>"}</script>
    </div>
    <div class="tutorial-exercise-support" data-label="barplotExercise-hint"
    data-completion="1" data-diagnostics="1" data-startover="1"
    data-lines="0" data-pipe="|&gt;">
    <pre class="text"><code>barplot(gameData[[&quot;Complexity Average&quot;]], xlab = &quot;Spiel&quot; , ylab = &quot;Score&quot;)</code></pre>
    </div>
    </div>
    </div>
    <div id="section-über-uns" class="section level2">
    <h2>Über uns</h2>
    <div id="section-lino-cortese" class="section level3">
    <h3>Lino Cortese</h3>
    <p>Lino ist verantwortlich für die Ausarbeitung des
    Datenanalyse-Abschnitts.</p>
    </div>
    <div id="section-maximilian-fronmüller" class="section level3">
    <h3>Maximilian Fronmüller</h3>
    <p>Maxi hat sich auf die Erstellung des Ergebnispräsentation-Abschnitts
    konzentriert.</p>
    </div>
    <div id="section-nikolay-nikolaev" class="section level3">
    <h3>Nikolay Nikolaev</h3>
    <p>Nikolay hat an die Abschnitte Datenbasis und Datenaufbereitung
    gearbeitet.</p>
    <p>
    <script type="application/shiny-prerendered" data-context="server-start">
    library(learnr)
    library(readxl)
    library("ggplot2")
    options(scipen = 10)
    gameData <- read_excel("bgg_dataset.xlsx", sheet = "Sheet")
    knitr::opts_chunk$set(echo = FALSE)
    </script>
     
    <script type="application/shiny-prerendered" data-context="server">
    learnr:::register_http_handlers(session, metadata = NULL)
    </script>
    
    
    <script type="application/shiny-prerendered" data-context="server">
    learnr:::prepare_tutorial_state(session)
    </script>
     
    <script type="application/shiny-prerendered" data-context="server">
    learnr:::i18n_observe_tutorial_language(input, session)
    </script>
    
    
    <script type="application/shiny-prerendered" data-context="server">
    session$onSessionEnded(function() {
            learnr:::event_trigger(session, "session_stop")
          })
    </script>
     
    <script type="application/shiny-prerendered" data-context="server">
    `tutorial-exercise-install-readxl-result` <- learnr:::setup_exercise_handler(reactive(req(input$`tutorial-exercise-install-readxl-code-editor`)), session)
    output$`tutorial-exercise-install-readxl-output` <- renderUI({
      `tutorial-exercise-install-readxl-result`()
    })
    </script>
    
    
    <script type="application/shiny-prerendered" data-context="server">
    learnr:::store_exercise_cache(structure(list(label = "install-readxl", global_setup = structure(c("library(learnr)", 
    "library(readxl)", "library(\"ggplot2\")", "options(scipen = 10)", 
    "gameData <- read_excel(\"bgg_dataset.xlsx\", sheet = \"Sheet\")", 
    "knitr::opts_chunk$set(echo = FALSE)"), chunk_opts = list(label = "setup", 
        include = FALSE)), setup = NULL, chunks = list(list(label = "install-readxl", 
        code = "install.packages(\"readxl\")\nlibrary (readxl)", 
        opts = list(label = "\"install-readxl\"", exercise = "TRUE"), 
        engine = "r")), code_check = NULL, error_check = NULL, check = NULL, 
        solution = NULL, tests = NULL, options = list(eval = FALSE, 
            echo = TRUE, results = "markup", tidy = FALSE, tidy.opts = NULL, 
            collapse = FALSE, prompt = FALSE, comment = NA, highlight = FALSE, 
            size = "normalsize", background = "#F7F7F7", strip.white = TRUE, 
            cache = 0, cache.path = "tutorial_page_cache/html/", 
            cache.vars = NULL, cache.lazy = TRUE, dependson = NULL, 
            autodep = FALSE, cache.rebuild = FALSE, fig.keep = "high", 
            fig.show = "asis", fig.align = "default", fig.path = "tutorial_page_files/figure-html/", 
            dev = "png", dev.args = NULL, dpi = 192, fig.ext = "png", 
            fig.width = 6.5, fig.height = 4, fig.env = "figure", 
            fig.cap = NULL, fig.scap = NULL, fig.lp = "fig:", fig.subcap = NULL, 
            fig.pos = "", out.width = 624, out.height = NULL, out.extra = NULL, 
            fig.retina = 2, external = TRUE, sanitize = FALSE, interval = 1, 
            aniopts = "controls,loop", warning = TRUE, error = FALSE, 
            message = TRUE, render = NULL, ref.label = NULL, child = NULL, 
            engine = "r", split = FALSE, include = TRUE, purl = TRUE, 
            max.print = 1000, label = "install-readxl", exercise = TRUE, 
            code = c("install.packages(\"readxl\")", "library (readxl)"
            ), out.width.px = 624, out.height.px = 384, params.src = "install-readxl, exercise=TRUE", 
            fig.num = 0, exercise.df_print = "paged", exercise.checker = "NULL"), 
        engine = "r", version = "4"), class = c("r", "tutorial_exercise"
    )))
    </script>
     
    <script type="application/shiny-prerendered" data-context="server">
    `tutorial-exercise-read-data-result` <- learnr:::setup_exercise_handler(reactive(req(input$`tutorial-exercise-read-data-code-editor`)), session)
    output$`tutorial-exercise-read-data-output` <- renderUI({
      `tutorial-exercise-read-data-result`()
    })
    </script>
    
    
    <script type="application/shiny-prerendered" data-context="server">
    learnr:::store_exercise_cache(structure(list(label = "read-data", global_setup = structure(c("library(learnr)", 
    "library(readxl)", "library(\"ggplot2\")", "options(scipen = 10)", 
    "gameData <- read_excel(\"bgg_dataset.xlsx\", sheet = \"Sheet\")", 
    "knitr::opts_chunk$set(echo = FALSE)"), chunk_opts = list(label = "setup", 
        include = FALSE)), setup = NULL, chunks = list(list(label = "read-data", 
        code = "gameData <- read_excel(\"bgg_dataset.xlsx\", sheet = \"Sheet\")", 
        opts = list(label = "\"read-data\"", exercise = "TRUE"), 
        engine = "r")), code_check = NULL, error_check = NULL, check = NULL, 
        solution = NULL, tests = NULL, options = list(eval = FALSE, 
            echo = TRUE, results = "markup", tidy = FALSE, tidy.opts = NULL, 
            collapse = FALSE, prompt = FALSE, comment = NA, highlight = FALSE, 
            size = "normalsize", background = "#F7F7F7", strip.white = TRUE, 
            cache = 0, cache.path = "tutorial_page_cache/html/", 
            cache.vars = NULL, cache.lazy = TRUE, dependson = NULL, 
            autodep = FALSE, cache.rebuild = FALSE, fig.keep = "high", 
            fig.show = "asis", fig.align = "default", fig.path = "tutorial_page_files/figure-html/", 
            dev = "png", dev.args = NULL, dpi = 192, fig.ext = "png", 
            fig.width = 6.5, fig.height = 4, fig.env = "figure", 
            fig.cap = NULL, fig.scap = NULL, fig.lp = "fig:", fig.subcap = NULL, 
            fig.pos = "", out.width = 624, out.height = NULL, out.extra = NULL, 
            fig.retina = 2, external = TRUE, sanitize = FALSE, interval = 1, 
            aniopts = "controls,loop", warning = TRUE, error = FALSE, 
            message = TRUE, render = NULL, ref.label = NULL, child = NULL, 
            engine = "r", split = FALSE, include = TRUE, purl = TRUE, 
            max.print = 1000, label = "read-data", exercise = TRUE, 
            code = "gameData <- read_excel(\"bgg_dataset.xlsx\", sheet = \"Sheet\")", 
            out.width.px = 624, out.height.px = 384, params.src = "read-data, exercise=TRUE", 
            fig.num = 0, exercise.df_print = "paged", exercise.checker = "NULL"), 
        engine = "r", version = "4"), class = c("r", "tutorial_exercise"
    )))
    </script>
     
    <script type="application/shiny-prerendered" data-context="server">
    `tutorial-exercise-show-data-result` <- learnr:::setup_exercise_handler(reactive(req(input$`tutorial-exercise-show-data-code-editor`)), session)
    output$`tutorial-exercise-show-data-output` <- renderUI({
      `tutorial-exercise-show-data-result`()
    })
    </script>
    
    
    <script type="application/shiny-prerendered" data-context="server">
    learnr:::store_exercise_cache(structure(list(label = "show-data", global_setup = structure(c("library(learnr)", 
    "library(readxl)", "library(\"ggplot2\")", "options(scipen = 10)", 
    "gameData <- read_excel(\"bgg_dataset.xlsx\", sheet = \"Sheet\")", 
    "knitr::opts_chunk$set(echo = FALSE)"), chunk_opts = list(label = "setup", 
        include = FALSE)), setup = NULL, chunks = list(list(label = "show-data", 
        code = "gameData", opts = list(label = "\"show-data\"", exercise = "TRUE"), 
        engine = "r")), code_check = NULL, error_check = NULL, check = NULL, 
        solution = NULL, tests = NULL, options = list(eval = FALSE, 
            echo = TRUE, results = "markup", tidy = FALSE, tidy.opts = NULL, 
            collapse = FALSE, prompt = FALSE, comment = NA, highlight = FALSE, 
            size = "normalsize", background = "#F7F7F7", strip.white = TRUE, 
            cache = 0, cache.path = "tutorial_page_cache/html/", 
            cache.vars = NULL, cache.lazy = TRUE, dependson = NULL, 
            autodep = FALSE, cache.rebuild = FALSE, fig.keep = "high", 
            fig.show = "asis", fig.align = "default", fig.path = "tutorial_page_files/figure-html/", 
            dev = "png", dev.args = NULL, dpi = 192, fig.ext = "png", 
            fig.width = 6.5, fig.height = 4, fig.env = "figure", 
            fig.cap = NULL, fig.scap = NULL, fig.lp = "fig:", fig.subcap = NULL, 
            fig.pos = "", out.width = 624, out.height = NULL, out.extra = NULL, 
            fig.retina = 2, external = TRUE, sanitize = FALSE, interval = 1, 
            aniopts = "controls,loop", warning = TRUE, error = FALSE, 
            message = TRUE, render = NULL, ref.label = NULL, child = NULL, 
            engine = "r", split = FALSE, include = TRUE, purl = TRUE, 
            max.print = 1000, label = "show-data", exercise = TRUE, 
            code = "gameData", out.width.px = 624, out.height.px = 384, 
            params.src = "show-data, exercise=TRUE", fig.num = 0, 
            exercise.df_print = "paged", exercise.checker = "NULL"), 
        engine = "r", version = "4"), class = c("r", "tutorial_exercise"
    )))
    </script>
     
    <script type="application/shiny-prerendered" data-context="server">
    `tutorial-exercise-read-column-result` <- learnr:::setup_exercise_handler(reactive(req(input$`tutorial-exercise-read-column-code-editor`)), session)
    output$`tutorial-exercise-read-column-output` <- renderUI({
      `tutorial-exercise-read-column-result`()
    })
    </script>
    
    
    <script type="application/shiny-prerendered" data-context="server">
    learnr:::store_exercise_cache(structure(list(label = "read-column", global_setup = structure(c("library(learnr)", 
    "library(readxl)", "library(\"ggplot2\")", "options(scipen = 10)", 
    "gameData <- read_excel(\"bgg_dataset.xlsx\", sheet = \"Sheet\")", 
    "knitr::opts_chunk$set(echo = FALSE)"), chunk_opts = list(label = "setup", 
        include = FALSE)), setup = NULL, chunks = list(list(label = "read-column", 
        code = "gameData$`Year Published`", opts = list(label = "\"read-column\"", 
            exercise = "TRUE"), engine = "r")), code_check = NULL, 
        error_check = NULL, check = NULL, solution = NULL, tests = NULL, 
        options = list(eval = FALSE, echo = TRUE, results = "markup", 
            tidy = FALSE, tidy.opts = NULL, collapse = FALSE, prompt = FALSE, 
            comment = NA, highlight = FALSE, size = "normalsize", 
            background = "#F7F7F7", strip.white = TRUE, cache = 0, 
            cache.path = "tutorial_page_cache/html/", cache.vars = NULL, 
            cache.lazy = TRUE, dependson = NULL, autodep = FALSE, 
            cache.rebuild = FALSE, fig.keep = "high", fig.show = "asis", 
            fig.align = "default", fig.path = "tutorial_page_files/figure-html/", 
            dev = "png", dev.args = NULL, dpi = 192, fig.ext = "png", 
            fig.width = 6.5, fig.height = 4, fig.env = "figure", 
            fig.cap = NULL, fig.scap = NULL, fig.lp = "fig:", fig.subcap = NULL, 
            fig.pos = "", out.width = 624, out.height = NULL, out.extra = NULL, 
            fig.retina = 2, external = TRUE, sanitize = FALSE, interval = 1, 
            aniopts = "controls,loop", warning = TRUE, error = FALSE, 
            message = TRUE, render = NULL, ref.label = NULL, child = NULL, 
            engine = "r", split = FALSE, include = TRUE, purl = TRUE, 
            max.print = 1000, label = "read-column", exercise = TRUE, 
            code = "gameData$`Year Published`", out.width.px = 624, 
            out.height.px = 384, params.src = "read-column, exercise=TRUE", 
            fig.num = 0, exercise.df_print = "paged", exercise.checker = "NULL"), 
        engine = "r", version = "4"), class = c("r", "tutorial_exercise"
    )))
    </script>
     
    <script type="application/shiny-prerendered" data-context="server">
    `tutorial-exercise-read-mechanics-column-result` <- learnr:::setup_exercise_handler(reactive(req(input$`tutorial-exercise-read-mechanics-column-code-editor`)), session)
    output$`tutorial-exercise-read-mechanics-column-output` <- renderUI({
      `tutorial-exercise-read-mechanics-column-result`()
    })
    </script>
    
    
    <script type="application/shiny-prerendered" data-context="server">
    learnr:::store_exercise_cache(structure(list(label = "read-mechanics-column", global_setup = structure(c("library(learnr)", 
    "library(readxl)", "library(\"ggplot2\")", "options(scipen = 10)", 
    "gameData <- read_excel(\"bgg_dataset.xlsx\", sheet = \"Sheet\")", 
    "knitr::opts_chunk$set(echo = FALSE)"), chunk_opts = list(label = "setup", 
        include = FALSE)), setup = NULL, chunks = list(list(label = "read-mechanics-column", 
        code = "", opts = list(label = "\"read-mechanics-column\"", 
            exercise = "TRUE"), engine = "r")), code_check = NULL, 
        error_check = NULL, check = NULL, solution = NULL, tests = NULL, 
        options = list(eval = FALSE, echo = TRUE, results = "markup", 
            tidy = FALSE, tidy.opts = NULL, collapse = FALSE, prompt = FALSE, 
            comment = NA, highlight = FALSE, size = "normalsize", 
            background = "#F7F7F7", strip.white = TRUE, cache = 0, 
            cache.path = "tutorial_page_cache/html/", cache.vars = NULL, 
            cache.lazy = TRUE, dependson = NULL, autodep = FALSE, 
            cache.rebuild = FALSE, fig.keep = "high", fig.show = "asis", 
            fig.align = "default", fig.path = "tutorial_page_files/figure-html/", 
            dev = "png", dev.args = NULL, dpi = 192, fig.ext = "png", 
            fig.width = 6.5, fig.height = 4, fig.env = "figure", 
            fig.cap = NULL, fig.scap = NULL, fig.lp = "fig:", fig.subcap = NULL, 
            fig.pos = "", out.width = 624, out.height = NULL, out.extra = NULL, 
            fig.retina = 2, external = TRUE, sanitize = FALSE, interval = 1, 
            aniopts = "controls,loop", warning = TRUE, error = FALSE, 
            message = TRUE, render = NULL, ref.label = NULL, child = NULL, 
            engine = "r", split = FALSE, include = TRUE, purl = TRUE, 
            max.print = 1000, label = "read-mechanics-column", exercise = TRUE, 
            code = "", out.width.px = 624, out.height.px = 384, params.src = "read-mechanics-column, exercise=TRUE", 
            fig.num = 0L, exercise.df_print = "paged", exercise.checker = "NULL"), 
        engine = "r", version = "4"), class = c("r", "tutorial_exercise"
    )))
    </script>
     
    <script type="application/shiny-prerendered" data-context="server">
    `tutorial-exercise-remove-empties-column-result` <- learnr:::setup_exercise_handler(reactive(req(input$`tutorial-exercise-remove-empties-column-code-editor`)), session)
    output$`tutorial-exercise-remove-empties-column-output` <- renderUI({
      `tutorial-exercise-remove-empties-column-result`()
    })
    </script>
    
    
    <script type="application/shiny-prerendered" data-context="server">
    learnr:::store_exercise_cache(structure(list(label = "remove-empties-column", global_setup = structure(c("library(learnr)", 
    "library(readxl)", "library(\"ggplot2\")", "options(scipen = 10)", 
    "gameData <- read_excel(\"bgg_dataset.xlsx\", sheet = \"Sheet\")", 
    "knitr::opts_chunk$set(echo = FALSE)"), chunk_opts = list(label = "setup", 
        include = FALSE)), setup = NULL, chunks = list(list(label = "remove-empties-column", 
        code = "gameData$`Year Published` <- trimws(gameData$`Year Published`)\ngameData$`Year Published`", 
        opts = list(label = "\"remove-empties-column\"", exercise = "TRUE"), 
        engine = "r")), code_check = NULL, error_check = NULL, check = NULL, 
        solution = NULL, tests = NULL, options = list(eval = FALSE, 
            echo = TRUE, results = "markup", tidy = FALSE, tidy.opts = NULL, 
            collapse = FALSE, prompt = FALSE, comment = NA, highlight = FALSE, 
            size = "normalsize", background = "#F7F7F7", strip.white = TRUE, 
            cache = 0, cache.path = "tutorial_page_cache/html/", 
            cache.vars = NULL, cache.lazy = TRUE, dependson = NULL, 
            autodep = FALSE, cache.rebuild = FALSE, fig.keep = "high", 
            fig.show = "asis", fig.align = "default", fig.path = "tutorial_page_files/figure-html/", 
            dev = "png", dev.args = NULL, dpi = 192, fig.ext = "png", 
            fig.width = 6.5, fig.height = 4, fig.env = "figure", 
            fig.cap = NULL, fig.scap = NULL, fig.lp = "fig:", fig.subcap = NULL, 
            fig.pos = "", out.width = 624, out.height = NULL, out.extra = NULL, 
            fig.retina = 2, external = TRUE, sanitize = FALSE, interval = 1, 
            aniopts = "controls,loop", warning = TRUE, error = FALSE, 
            message = TRUE, render = NULL, ref.label = NULL, child = NULL, 
            engine = "r", split = FALSE, include = TRUE, purl = TRUE, 
            max.print = 1000, label = "remove-empties-column", exercise = TRUE, 
            code = c("gameData$`Year Published` <- trimws(gameData$`Year Published`)", 
            "gameData$`Year Published`"), out.width.px = 624, out.height.px = 384, 
            params.src = "remove-empties-column, exercise=TRUE", 
            fig.num = 0, exercise.df_print = "paged", exercise.checker = "NULL"), 
        engine = "r", version = "4"), class = c("r", "tutorial_exercise"
    )))
    </script>
     
    <script type="application/shiny-prerendered" data-context="server">
    `tutorial-exercise-remove-empties-result` <- learnr:::setup_exercise_handler(reactive(req(input$`tutorial-exercise-remove-empties-code-editor`)), session)
    output$`tutorial-exercise-remove-empties-output` <- renderUI({
      `tutorial-exercise-remove-empties-result`()
    })
    </script>
    
    
    <script type="application/shiny-prerendered" data-context="server">
    learnr:::store_exercise_cache(structure(list(label = "remove-empties", global_setup = structure(c("library(learnr)", 
    "library(readxl)", "library(\"ggplot2\")", "options(scipen = 10)", 
    "gameData <- read_excel(\"bgg_dataset.xlsx\", sheet = \"Sheet\")", 
    "knitr::opts_chunk$set(echo = FALSE)"), chunk_opts = list(label = "setup", 
        include = FALSE)), setup = NULL, chunks = list(list(label = "remove-empties", 
        code = "gameData <- lapply(gameData, trimws)\ngameData", 
        opts = list(label = "\"remove-empties\"", exercise = "TRUE"), 
        engine = "r")), code_check = NULL, error_check = NULL, check = NULL, 
        solution = NULL, tests = NULL, options = list(eval = FALSE, 
            echo = TRUE, results = "markup", tidy = FALSE, tidy.opts = NULL, 
            collapse = FALSE, prompt = FALSE, comment = NA, highlight = FALSE, 
            size = "normalsize", background = "#F7F7F7", strip.white = TRUE, 
            cache = 0, cache.path = "tutorial_page_cache/html/", 
            cache.vars = NULL, cache.lazy = TRUE, dependson = NULL, 
            autodep = FALSE, cache.rebuild = FALSE, fig.keep = "high", 
            fig.show = "asis", fig.align = "default", fig.path = "tutorial_page_files/figure-html/", 
            dev = "png", dev.args = NULL, dpi = 192, fig.ext = "png", 
            fig.width = 6.5, fig.height = 4, fig.env = "figure", 
            fig.cap = NULL, fig.scap = NULL, fig.lp = "fig:", fig.subcap = NULL, 
            fig.pos = "", out.width = 624, out.height = NULL, out.extra = NULL, 
            fig.retina = 2, external = TRUE, sanitize = FALSE, interval = 1, 
            aniopts = "controls,loop", warning = TRUE, error = FALSE, 
            message = TRUE, render = NULL, ref.label = NULL, child = NULL, 
            engine = "r", split = FALSE, include = TRUE, purl = TRUE, 
            max.print = 1000, label = "remove-empties", exercise = TRUE, 
            code = c("gameData <- lapply(gameData, trimws)", "gameData"
            ), out.width.px = 624, out.height.px = 384, params.src = "remove-empties, exercise=TRUE", 
            fig.num = 0, exercise.df_print = "paged", exercise.checker = "NULL"), 
        engine = "r", version = "4"), class = c("r", "tutorial_exercise"
    )))
    </script>
     
    <script type="application/shiny-prerendered" data-context="server">
    `tutorial-exercise-to-lowercase-column-result` <- learnr:::setup_exercise_handler(reactive(req(input$`tutorial-exercise-to-lowercase-column-code-editor`)), session)
    output$`tutorial-exercise-to-lowercase-column-output` <- renderUI({
      `tutorial-exercise-to-lowercase-column-result`()
    })
    </script>
    
    
    <script type="application/shiny-prerendered" data-context="server">
    learnr:::store_exercise_cache(structure(list(label = "to-lowercase-column", global_setup = structure(c("library(learnr)", 
    "library(readxl)", "library(\"ggplot2\")", "options(scipen = 10)", 
    "gameData <- read_excel(\"bgg_dataset.xlsx\", sheet = \"Sheet\")", 
    "knitr::opts_chunk$set(echo = FALSE)"), chunk_opts = list(label = "setup", 
        include = FALSE)), setup = NULL, chunks = list(list(label = "to-lowercase-column", 
        code = "gameData$`Mechanics` <- tolower(gameData$`Mechanics`)\ngameData$`Mechanics`", 
        opts = list(label = "\"to-lowercase-column\"", exercise = "TRUE"), 
        engine = "r")), code_check = NULL, error_check = NULL, check = NULL, 
        solution = NULL, tests = NULL, options = list(eval = FALSE, 
            echo = TRUE, results = "markup", tidy = FALSE, tidy.opts = NULL, 
            collapse = FALSE, prompt = FALSE, comment = NA, highlight = FALSE, 
            size = "normalsize", background = "#F7F7F7", strip.white = TRUE, 
            cache = 0, cache.path = "tutorial_page_cache/html/", 
            cache.vars = NULL, cache.lazy = TRUE, dependson = NULL, 
            autodep = FALSE, cache.rebuild = FALSE, fig.keep = "high", 
            fig.show = "asis", fig.align = "default", fig.path = "tutorial_page_files/figure-html/", 
            dev = "png", dev.args = NULL, dpi = 192, fig.ext = "png", 
            fig.width = 6.5, fig.height = 4, fig.env = "figure", 
            fig.cap = NULL, fig.scap = NULL, fig.lp = "fig:", fig.subcap = NULL, 
            fig.pos = "", out.width = 624, out.height = NULL, out.extra = NULL, 
            fig.retina = 2, external = TRUE, sanitize = FALSE, interval = 1, 
            aniopts = "controls,loop", warning = TRUE, error = FALSE, 
            message = TRUE, render = NULL, ref.label = NULL, child = NULL, 
            engine = "r", split = FALSE, include = TRUE, purl = TRUE, 
            max.print = 1000, label = "to-lowercase-column", exercise = TRUE, 
            code = c("gameData$`Mechanics` <- tolower(gameData$`Mechanics`)", 
            "gameData$`Mechanics`"), out.width.px = 624, out.height.px = 384, 
            params.src = "to-lowercase-column, exercise=TRUE", fig.num = 0, 
            exercise.df_print = "paged", exercise.checker = "NULL"), 
        engine = "r", version = "4"), class = c("r", "tutorial_exercise"
    )))
    </script>
     
    <script type="application/shiny-prerendered" data-context="server">
    `tutorial-exercise-replace-variable-result` <- learnr:::setup_exercise_handler(reactive(req(input$`tutorial-exercise-replace-variable-code-editor`)), session)
    output$`tutorial-exercise-replace-variable-output` <- renderUI({
      `tutorial-exercise-replace-variable-result`()
    })
    </script>
    
    
    <script type="application/shiny-prerendered" data-context="server">
    learnr:::store_exercise_cache(structure(list(label = "replace-variable", global_setup = structure(c("library(learnr)", 
    "library(readxl)", "library(\"ggplot2\")", "options(scipen = 10)", 
    "gameData <- read_excel(\"bgg_dataset.xlsx\", sheet = \"Sheet\")", 
    "knitr::opts_chunk$set(echo = FALSE)"), chunk_opts = list(label = "setup", 
        include = FALSE)), setup = NULL, chunks = list(list(label = "replace-variable", 
        code = "gameData$`Mechanics` <- gsub(\"Action\", \"!!!ACTION!!!\", gameData$`Mechanics`)\ngameData$`Mechanics`", 
        opts = list(label = "\"replace-variable\"", exercise = "TRUE"), 
        engine = "r")), code_check = NULL, error_check = NULL, check = NULL, 
        solution = NULL, tests = NULL, options = list(eval = FALSE, 
            echo = TRUE, results = "markup", tidy = FALSE, tidy.opts = NULL, 
            collapse = FALSE, prompt = FALSE, comment = NA, highlight = FALSE, 
            size = "normalsize", background = "#F7F7F7", strip.white = TRUE, 
            cache = 0, cache.path = "tutorial_page_cache/html/", 
            cache.vars = NULL, cache.lazy = TRUE, dependson = NULL, 
            autodep = FALSE, cache.rebuild = FALSE, fig.keep = "high", 
            fig.show = "asis", fig.align = "default", fig.path = "tutorial_page_files/figure-html/", 
            dev = "png", dev.args = NULL, dpi = 192, fig.ext = "png", 
            fig.width = 6.5, fig.height = 4, fig.env = "figure", 
            fig.cap = NULL, fig.scap = NULL, fig.lp = "fig:", fig.subcap = NULL, 
            fig.pos = "", out.width = 624, out.height = NULL, out.extra = NULL, 
            fig.retina = 2, external = TRUE, sanitize = FALSE, interval = 1, 
            aniopts = "controls,loop", warning = TRUE, error = FALSE, 
            message = TRUE, render = NULL, ref.label = NULL, child = NULL, 
            engine = "r", split = FALSE, include = TRUE, purl = TRUE, 
            max.print = 1000, label = "replace-variable", exercise = TRUE, 
            code = c("gameData$`Mechanics` <- gsub(\"Action\", \"!!!ACTION!!!\", gameData$`Mechanics`)", 
            "gameData$`Mechanics`"), out.width.px = 624, out.height.px = 384, 
            params.src = "replace-variable, exercise=TRUE", fig.num = 0, 
            exercise.df_print = "paged", exercise.checker = "NULL"), 
        engine = "r", version = "4"), class = c("r", "tutorial_exercise"
    )))
    </script>
     
    <script type="application/shiny-prerendered" data-context="server">
    `tutorial-exercise-replace-missing-variable-result` <- learnr:::setup_exercise_handler(reactive(req(input$`tutorial-exercise-replace-missing-variable-code-editor`)), session)
    output$`tutorial-exercise-replace-missing-variable-output` <- renderUI({
      `tutorial-exercise-replace-missing-variable-result`()
    })
    </script>
    
    
    <script type="application/shiny-prerendered" data-context="server">
    learnr:::store_exercise_cache(structure(list(label = "replace-missing-variable", global_setup = structure(c("library(learnr)", 
    "library(readxl)", "library(\"ggplot2\")", "options(scipen = 10)", 
    "gameData <- read_excel(\"bgg_dataset.xlsx\", sheet = \"Sheet\")", 
    "knitr::opts_chunk$set(echo = FALSE)"), chunk_opts = list(label = "setup", 
        include = FALSE)), setup = NULL, chunks = list(list(label = "replace-missing-variable", 
        code = "gameData$`Rating Average`[is.na(gameData$`Rating Average`)] <- mean(gameData$`Rating Average`, na.rm = TRUE)", 
        opts = list(label = "\"replace-missing-variable\"", exercise = "TRUE"), 
        engine = "r")), code_check = NULL, error_check = NULL, check = NULL, 
        solution = NULL, tests = NULL, options = list(eval = FALSE, 
            echo = TRUE, results = "markup", tidy = FALSE, tidy.opts = NULL, 
            collapse = FALSE, prompt = FALSE, comment = NA, highlight = FALSE, 
            size = "normalsize", background = "#F7F7F7", strip.white = TRUE, 
            cache = 0, cache.path = "tutorial_page_cache/html/", 
            cache.vars = NULL, cache.lazy = TRUE, dependson = NULL, 
            autodep = FALSE, cache.rebuild = FALSE, fig.keep = "high", 
            fig.show = "asis", fig.align = "default", fig.path = "tutorial_page_files/figure-html/", 
            dev = "png", dev.args = NULL, dpi = 192, fig.ext = "png", 
            fig.width = 6.5, fig.height = 4, fig.env = "figure", 
            fig.cap = NULL, fig.scap = NULL, fig.lp = "fig:", fig.subcap = NULL, 
            fig.pos = "", out.width = 624, out.height = NULL, out.extra = NULL, 
            fig.retina = 2, external = TRUE, sanitize = FALSE, interval = 1, 
            aniopts = "controls,loop", warning = TRUE, error = FALSE, 
            message = TRUE, render = NULL, ref.label = NULL, child = NULL, 
            engine = "r", split = FALSE, include = TRUE, purl = TRUE, 
            max.print = 1000, label = "replace-missing-variable", 
            exercise = TRUE, code = "gameData$`Rating Average`[is.na(gameData$`Rating Average`)] <- mean(gameData$`Rating Average`, na.rm = TRUE)", 
            out.width.px = 624, out.height.px = 384, params.src = "replace-missing-variable, exercise=TRUE", 
            fig.num = 0, exercise.df_print = "paged", exercise.checker = "NULL"), 
        engine = "r", version = "4"), class = c("r", "tutorial_exercise"
    )))
    </script>
     
    <script type="application/shiny-prerendered" data-context="server">
    `tutorial-exercise-remove-duplicates-result` <- learnr:::setup_exercise_handler(reactive(req(input$`tutorial-exercise-remove-duplicates-code-editor`)), session)
    output$`tutorial-exercise-remove-duplicates-output` <- renderUI({
      `tutorial-exercise-remove-duplicates-result`()
    })
    </script>
    
    
    <script type="application/shiny-prerendered" data-context="server">
    learnr:::store_exercise_cache(structure(list(label = "remove-duplicates", global_setup = structure(c("library(learnr)", 
    "library(readxl)", "library(\"ggplot2\")", "options(scipen = 10)", 
    "gameData <- read_excel(\"bgg_dataset.xlsx\", sheet = \"Sheet\")", 
    "knitr::opts_chunk$set(echo = FALSE)"), chunk_opts = list(label = "setup", 
        include = FALSE)), setup = NULL, chunks = list(list(label = "remove-duplicates", 
        code = "vector <- c(1, 2, 3, 3, 5, 2, 1, 7, 10, 5)\nvector <- unique(vector)\n\nvector", 
        opts = list(label = "\"remove-duplicates\"", exercise = "TRUE"), 
        engine = "r")), code_check = NULL, error_check = NULL, check = NULL, 
        solution = NULL, tests = NULL, options = list(eval = FALSE, 
            echo = TRUE, results = "markup", tidy = FALSE, tidy.opts = NULL, 
            collapse = FALSE, prompt = FALSE, comment = NA, highlight = FALSE, 
            size = "normalsize", background = "#F7F7F7", strip.white = TRUE, 
            cache = 0, cache.path = "tutorial_page_cache/html/", 
            cache.vars = NULL, cache.lazy = TRUE, dependson = NULL, 
            autodep = FALSE, cache.rebuild = FALSE, fig.keep = "high", 
            fig.show = "asis", fig.align = "default", fig.path = "tutorial_page_files/figure-html/", 
            dev = "png", dev.args = NULL, dpi = 192, fig.ext = "png", 
            fig.width = 6.5, fig.height = 4, fig.env = "figure", 
            fig.cap = NULL, fig.scap = NULL, fig.lp = "fig:", fig.subcap = NULL, 
            fig.pos = "", out.width = 624, out.height = NULL, out.extra = NULL, 
            fig.retina = 2, external = TRUE, sanitize = FALSE, interval = 1, 
            aniopts = "controls,loop", warning = TRUE, error = FALSE, 
            message = TRUE, render = NULL, ref.label = NULL, child = NULL, 
            engine = "r", split = FALSE, include = TRUE, purl = TRUE, 
            max.print = 1000, label = "remove-duplicates", exercise = TRUE, 
            code = c("vector <- c(1, 2, 3, 3, 5, 2, 1, 7, 10, 5)", 
            "vector <- unique(vector)", "", "vector"), out.width.px = 624, 
            out.height.px = 384, params.src = "remove-duplicates, exercise=TRUE", 
            fig.num = 0, exercise.df_print = "paged", exercise.checker = "NULL"), 
        engine = "r", version = "4"), class = c("r", "tutorial_exercise"
    )))
    </script>
     
    <script type="application/shiny-prerendered" data-context="server">
    `tutorial-exercise-replace-special-chars-result` <- learnr:::setup_exercise_handler(reactive(req(input$`tutorial-exercise-replace-special-chars-code-editor`)), session)
    output$`tutorial-exercise-replace-special-chars-output` <- renderUI({
      `tutorial-exercise-replace-special-chars-result`()
    })
    </script>
    
    
    <script type="application/shiny-prerendered" data-context="server">
    learnr:::store_exercise_cache(structure(list(label = "replace-special-chars", global_setup = structure(c("library(learnr)", 
    "library(readxl)", "library(\"ggplot2\")", "options(scipen = 10)", 
    "gameData <- read_excel(\"bgg_dataset.xlsx\", sheet = \"Sheet\")", 
    "knitr::opts_chunk$set(echo = FALSE)"), chunk_opts = list(label = "setup", 
        include = FALSE)), setup = NULL, chunks = list(list(label = "replace-special-chars", 
        code = "gameData$`Mechanics` <- gsub(\"[^a-zA-Z0-9 ]\", \"\", gameData$`Mechanics`)\ngameData$`Mechanics`", 
        opts = list(label = "\"replace-special-chars\"", exercise = "TRUE"), 
        engine = "r")), code_check = NULL, error_check = NULL, check = NULL, 
        solution = NULL, tests = NULL, options = list(eval = FALSE, 
            echo = TRUE, results = "markup", tidy = FALSE, tidy.opts = NULL, 
            collapse = FALSE, prompt = FALSE, comment = NA, highlight = FALSE, 
            size = "normalsize", background = "#F7F7F7", strip.white = TRUE, 
            cache = 0, cache.path = "tutorial_page_cache/html/", 
            cache.vars = NULL, cache.lazy = TRUE, dependson = NULL, 
            autodep = FALSE, cache.rebuild = FALSE, fig.keep = "high", 
            fig.show = "asis", fig.align = "default", fig.path = "tutorial_page_files/figure-html/", 
            dev = "png", dev.args = NULL, dpi = 192, fig.ext = "png", 
            fig.width = 6.5, fig.height = 4, fig.env = "figure", 
            fig.cap = NULL, fig.scap = NULL, fig.lp = "fig:", fig.subcap = NULL, 
            fig.pos = "", out.width = 624, out.height = NULL, out.extra = NULL, 
            fig.retina = 2, external = TRUE, sanitize = FALSE, interval = 1, 
            aniopts = "controls,loop", warning = TRUE, error = FALSE, 
            message = TRUE, render = NULL, ref.label = NULL, child = NULL, 
            engine = "r", split = FALSE, include = TRUE, purl = TRUE, 
            max.print = 1000, label = "replace-special-chars", exercise = TRUE, 
            code = c("gameData$`Mechanics` <- gsub(\"[^a-zA-Z0-9 ]\", \"\", gameData$`Mechanics`)", 
            "gameData$`Mechanics`"), out.width.px = 624, out.height.px = 384, 
            params.src = "replace-special-chars, exercise=TRUE", 
            fig.num = 0, exercise.df_print = "paged", exercise.checker = "NULL"), 
        engine = "r", version = "4"), class = c("r", "tutorial_exercise"
    )))
    </script>
     
    <script type="application/shiny-prerendered" data-context="server">
    learnr:::question_prerendered_chunk(structure(list(type = "learnr_radio", label = "second-quiz-1", 
        question = structure("Mit welchem R-Befehl lassen sich Packages installieren?", html = TRUE, class = c("html", 
        "character")), answers = list(structure(list(id = "lnr_ans_12cf4cb", 
            option = "install.packages()", value = "install.packages()", 
            label = structure("install.packages()", html = TRUE, class = c("html", 
            "character")), correct = TRUE, message = NULL, type = "literal"), class = c("tutorial_question_answer", 
        "tutorial_quiz_answer")), structure(list(id = "lnr_ans_65b9fe3", 
            option = "add.packages()", value = "add.packages()", 
            label = structure("add.packages()", html = TRUE, class = c("html", 
            "character")), correct = FALSE, message = NULL, type = "literal"), class = c("tutorial_question_answer", 
        "tutorial_quiz_answer")), structure(list(id = "lnr_ans_90226f5", 
            option = "install.library()", value = "install.library()", 
            label = structure("install.library()", html = TRUE, class = c("html", 
            "character")), correct = FALSE, message = NULL, type = "literal"), class = c("tutorial_question_answer", 
        "tutorial_quiz_answer")), structure(list(id = "lnr_ans_97a58eb", 
            option = "install()", value = "install()", label = structure("install()", html = TRUE, class = c("html", 
            "character")), correct = FALSE, message = NULL, type = "literal"), class = c("tutorial_question_answer", 
        "tutorial_quiz_answer"))), button_labels = list(submit = structure("<span data-i18n=\"button.questionsubmit\">Submit Answer<\u002fspan>", html = TRUE, class = c("html", 
        "character")), try_again = structure("<span data-i18n=\"button.questiontryagain\">Try Again<\u002fspan>", html = TRUE, class = c("html", 
        "character"))), messages = list(correct = structure("Correct!", html = TRUE, class = c("html", 
        "character")), try_again = structure("Incorrect", html = TRUE, class = c("html", 
        "character")), incorrect = structure("Incorrect", html = TRUE, class = c("html", 
        "character")), message = NULL, post_message = NULL), ids = list(
            answer = "second-quiz-1-answer", question = "second-quiz-1"), 
        loading = NULL, random_answer_order = FALSE, allow_retry = FALSE, 
        seed = 1218072898.93279, options = list()), class = c("learnr_radio", 
    "tutorial_question")), session = session)
    </script>
    
    
    <script type="application/shiny-prerendered" data-context="server">
    learnr:::question_prerendered_chunk(structure(list(type = "learnr_radio", label = "second-quiz-2", 
        question = structure("Mit welchem R-Befehl lassen sich die installierten Packages initialisieren?", html = TRUE, class = c("html", 
        "character")), answers = list(structure(list(id = "lnr_ans_16687fb", 
            option = "use()", value = "use()", label = structure("use()", html = TRUE, class = c("html", 
            "character")), correct = FALSE, message = NULL, type = "literal"), class = c("tutorial_question_answer", 
        "tutorial_quiz_answer")), structure(list(id = "lnr_ans_7a27b3a", 
            option = "library()", value = "library()", label = structure("library()", html = TRUE, class = c("html", 
            "character")), correct = TRUE, message = NULL, type = "literal"), class = c("tutorial_question_answer", 
        "tutorial_quiz_answer")), structure(list(id = "lnr_ans_3ad5217", 
            option = "init()", value = "init()", label = structure("init()", html = TRUE, class = c("html", 
            "character")), correct = FALSE, message = NULL, type = "literal"), class = c("tutorial_question_answer", 
        "tutorial_quiz_answer")), structure(list(id = "lnr_ans_683f85c", 
            option = "install.packages()", value = "install.packages()", 
            label = structure("install.packages()", html = TRUE, class = c("html", 
            "character")), correct = FALSE, message = NULL, type = "literal"), class = c("tutorial_question_answer", 
        "tutorial_quiz_answer"))), button_labels = list(submit = structure("<span data-i18n=\"button.questionsubmit\">Submit Answer<\u002fspan>", html = TRUE, class = c("html", 
        "character")), try_again = structure("<span data-i18n=\"button.questiontryagain\">Try Again<\u002fspan>", html = TRUE, class = c("html", 
        "character"))), messages = list(correct = structure("Correct!", html = TRUE, class = c("html", 
        "character")), try_again = structure("Incorrect", html = TRUE, class = c("html", 
        "character")), incorrect = structure("Incorrect", html = TRUE, class = c("html", 
        "character")), message = NULL, post_message = NULL), ids = list(
            answer = "second-quiz-2-answer", question = "second-quiz-2"), 
        loading = NULL, random_answer_order = FALSE, allow_retry = FALSE, 
        seed = 1599605720.25513, options = list()), class = c("learnr_radio", 
    "tutorial_question")), session = session)
    </script>
     
    <script type="application/shiny-prerendered" data-context="server">
    learnr:::question_prerendered_chunk(structure(list(type = "learnr_radio", label = "second-quiz-3", 
        question = structure("Welcher Packet benutzen wir, um XLSX-Dateien zu lesen?", html = TRUE, class = c("html", 
        "character")), answers = list(structure(list(id = "lnr_ans_f45d7ab", 
            option = "readxl()", value = "readxl()", label = structure("readxl()", html = TRUE, class = c("html", 
            "character")), correct = TRUE, message = NULL, type = "literal"), class = c("tutorial_question_answer", 
        "tutorial_quiz_answer")), structure(list(id = "lnr_ans_65934f8", 
            option = "readxls()", value = "readxls()", label = structure("readxls()", html = TRUE, class = c("html", 
            "character")), correct = FALSE, message = NULL, type = "literal"), class = c("tutorial_question_answer", 
        "tutorial_quiz_answer")), structure(list(id = "lnr_ans_33189f9", 
            option = "readexcel()", value = "readexcel()", label = structure("readexcel()", html = TRUE, class = c("html", 
            "character")), correct = FALSE, message = NULL, type = "literal"), class = c("tutorial_question_answer", 
        "tutorial_quiz_answer")), structure(list(id = "lnr_ans_ac98401", 
            option = "excelread()", value = "excelread()", label = structure("excelread()", html = TRUE, class = c("html", 
            "character")), correct = FALSE, message = NULL, type = "literal"), class = c("tutorial_question_answer", 
        "tutorial_quiz_answer"))), button_labels = list(submit = structure("<span data-i18n=\"button.questionsubmit\">Submit Answer<\u002fspan>", html = TRUE, class = c("html", 
        "character")), try_again = structure("<span data-i18n=\"button.questiontryagain\">Try Again<\u002fspan>", html = TRUE, class = c("html", 
        "character"))), messages = list(correct = structure("Correct!", html = TRUE, class = c("html", 
        "character")), try_again = structure("Incorrect", html = TRUE, class = c("html", 
        "character")), incorrect = structure("Incorrect", html = TRUE, class = c("html", 
        "character")), message = NULL, post_message = NULL), ids = list(
            answer = "second-quiz-3-answer", question = "second-quiz-3"), 
        loading = NULL, random_answer_order = FALSE, allow_retry = FALSE, 
        seed = 163007436.924094, options = list()), class = c("learnr_radio", 
    "tutorial_question")), session = session)
    </script>
    
    
    <script type="application/shiny-prerendered" data-context="server">
    learnr:::question_prerendered_chunk(structure(list(type = "learnr_radio", label = "second-quiz-4", 
        question = structure("Wie lassen sich einzelne Spalten aus dem Datensatz auslesen?", html = TRUE, class = c("html", 
        "character")), answers = list(structure(list(id = "lnr_ans_96832df", 
            option = "dataset&\\`column\\`", value = "dataset&\\`column\\`", 
            label = structure("dataset&amp;`column`", html = TRUE, class = c("html", 
            "character")), correct = FALSE, message = NULL, type = "literal"), class = c("tutorial_question_answer", 
        "tutorial_quiz_answer")), structure(list(id = "lnr_ans_c6758aa", 
            option = "column$dataset", value = "column$dataset", 
            label = structure("column$dataset", html = TRUE, class = c("html", 
            "character")), correct = FALSE, message = NULL, type = "literal"), class = c("tutorial_question_answer", 
        "tutorial_quiz_answer")), structure(list(id = "lnr_ans_5ee110b", 
            option = "dataset%\\`column\\`", value = "dataset%\\`column\\`", 
            label = structure("dataset%`column`", html = TRUE, class = c("html", 
            "character")), correct = FALSE, message = NULL, type = "literal"), class = c("tutorial_question_answer", 
        "tutorial_quiz_answer")), structure(list(id = "lnr_ans_c3ffeb", 
            option = "dataset$\\`column\\`", value = "dataset$\\`column\\`", 
            label = structure("dataset$`column`", html = TRUE, class = c("html", 
            "character")), correct = TRUE, message = NULL, type = "literal"), class = c("tutorial_question_answer", 
        "tutorial_quiz_answer"))), button_labels = list(submit = structure("<span data-i18n=\"button.questionsubmit\">Submit Answer<\u002fspan>", html = TRUE, class = c("html", 
        "character")), try_again = structure("<span data-i18n=\"button.questiontryagain\">Try Again<\u002fspan>", html = TRUE, class = c("html", 
        "character"))), messages = list(correct = structure("Correct!", html = TRUE, class = c("html", 
        "character")), try_again = structure("Incorrect", html = TRUE, class = c("html", 
        "character")), incorrect = structure("Incorrect", html = TRUE, class = c("html", 
        "character")), message = NULL, post_message = NULL), ids = list(
            answer = "second-quiz-4-answer", question = "second-quiz-4"), 
        loading = NULL, random_answer_order = FALSE, allow_retry = FALSE, 
        seed = 826987455.114904, options = list()), class = c("learnr_radio", 
    "tutorial_question")), session = session)
    </script>
     
    <script type="application/shiny-prerendered" data-context="server">
    `tutorial-exercise-mean-result` <- learnr:::setup_exercise_handler(reactive(req(input$`tutorial-exercise-mean-code-editor`)), session)
    output$`tutorial-exercise-mean-output` <- renderUI({
      `tutorial-exercise-mean-result`()
    })
    </script>
    
    
    <script type="application/shiny-prerendered" data-context="server">
    learnr:::store_exercise_cache(structure(list(label = "mean", global_setup = structure(c("library(learnr)", 
    "library(readxl)", "library(\"ggplot2\")", "options(scipen = 10)", 
    "gameData <- read_excel(\"bgg_dataset.xlsx\", sheet = \"Sheet\")", 
    "knitr::opts_chunk$set(echo = FALSE)"), chunk_opts = list(label = "setup", 
        include = FALSE)), setup = NULL, chunks = list(list(label = "mean", 
        code = "\n\n", opts = list(label = "\"mean\"", exercise = "TRUE"), 
        engine = "r")), code_check = NULL, error_check = NULL, check = NULL, 
        solution = NULL, tests = NULL, options = list(eval = FALSE, 
            echo = TRUE, results = "markup", tidy = FALSE, tidy.opts = NULL, 
            collapse = FALSE, prompt = FALSE, comment = NA, highlight = FALSE, 
            size = "normalsize", background = "#F7F7F7", strip.white = TRUE, 
            cache = 0, cache.path = "tutorial_page_cache/html/", 
            cache.vars = NULL, cache.lazy = TRUE, dependson = NULL, 
            autodep = FALSE, cache.rebuild = FALSE, fig.keep = "high", 
            fig.show = "asis", fig.align = "default", fig.path = "tutorial_page_files/figure-html/", 
            dev = "png", dev.args = NULL, dpi = 192, fig.ext = "png", 
            fig.width = 6.5, fig.height = 4, fig.env = "figure", 
            fig.cap = NULL, fig.scap = NULL, fig.lp = "fig:", fig.subcap = NULL, 
            fig.pos = "", out.width = 624, out.height = NULL, out.extra = NULL, 
            fig.retina = 2, external = TRUE, sanitize = FALSE, interval = 1, 
            aniopts = "controls,loop", warning = TRUE, error = FALSE, 
            message = TRUE, render = NULL, ref.label = NULL, child = NULL, 
            engine = "r", split = FALSE, include = TRUE, purl = TRUE, 
            max.print = 1000, label = "mean", exercise = TRUE, out.width.px = 624, 
            out.height.px = 384, params.src = "mean, exercise=TRUE", 
            fig.num = 0L, exercise.df_print = "paged", exercise.checker = "NULL"), 
        engine = "r", version = "4"), class = c("r", "tutorial_exercise"
    )))
    </script>
     
    <script type="application/shiny-prerendered" data-context="server">
    `tutorial-exercise-median-result` <- learnr:::setup_exercise_handler(reactive(req(input$`tutorial-exercise-median-code-editor`)), session)
    output$`tutorial-exercise-median-output` <- renderUI({
      `tutorial-exercise-median-result`()
    })
    </script>
    
    
    <script type="application/shiny-prerendered" data-context="server">
    learnr:::store_exercise_cache(structure(list(label = "median", global_setup = structure(c("library(learnr)", 
    "library(readxl)", "library(\"ggplot2\")", "options(scipen = 10)", 
    "gameData <- read_excel(\"bgg_dataset.xlsx\", sheet = \"Sheet\")", 
    "knitr::opts_chunk$set(echo = FALSE)"), chunk_opts = list(label = "setup", 
        include = FALSE)), setup = NULL, chunks = list(list(label = "median", 
        code = "ptime <- gameData[[\"Play Time\"]]", opts = list(
            label = "\"median\"", exercise = "TRUE"), engine = "r")), 
        code_check = NULL, error_check = NULL, check = NULL, solution = NULL, 
        tests = NULL, options = list(eval = FALSE, echo = TRUE, results = "markup", 
            tidy = FALSE, tidy.opts = NULL, collapse = FALSE, prompt = FALSE, 
            comment = NA, highlight = FALSE, size = "normalsize", 
            background = "#F7F7F7", strip.white = TRUE, cache = 0, 
            cache.path = "tutorial_page_cache/html/", cache.vars = NULL, 
            cache.lazy = TRUE, dependson = NULL, autodep = FALSE, 
            cache.rebuild = FALSE, fig.keep = "high", fig.show = "asis", 
            fig.align = "default", fig.path = "tutorial_page_files/figure-html/", 
            dev = "png", dev.args = NULL, dpi = 192, fig.ext = "png", 
            fig.width = 6.5, fig.height = 4, fig.env = "figure", 
            fig.cap = NULL, fig.scap = NULL, fig.lp = "fig:", fig.subcap = NULL, 
            fig.pos = "", out.width = 624, out.height = NULL, out.extra = NULL, 
            fig.retina = 2, external = TRUE, sanitize = FALSE, interval = 1, 
            aniopts = "controls,loop", warning = TRUE, error = FALSE, 
            message = TRUE, render = NULL, ref.label = NULL, child = NULL, 
            engine = "r", split = FALSE, include = TRUE, purl = TRUE, 
            max.print = 1000, label = "median", exercise = TRUE, 
            code = "ptime <- gameData[[\"Play Time\"]]", out.width.px = 624, 
            out.height.px = 384, params.src = "median, exercise=TRUE", 
            fig.num = 0, exercise.df_print = "paged", exercise.checker = "NULL"), 
        engine = "r", version = "4"), class = c("r", "tutorial_exercise"
    )))
    </script>
     
    <script type="application/shiny-prerendered" data-context="server">
    `tutorial-exercise-variance-result` <- learnr:::setup_exercise_handler(reactive(req(input$`tutorial-exercise-variance-code-editor`)), session)
    output$`tutorial-exercise-variance-output` <- renderUI({
      `tutorial-exercise-variance-result`()
    })
    </script>
    
    
    <script type="application/shiny-prerendered" data-context="server">
    learnr:::store_exercise_cache(structure(list(label = "variance", global_setup = structure(c("library(learnr)", 
    "library(readxl)", "library(\"ggplot2\")", "options(scipen = 10)", 
    "gameData <- read_excel(\"bgg_dataset.xlsx\", sheet = \"Sheet\")", 
    "knitr::opts_chunk$set(echo = FALSE)"), chunk_opts = list(label = "setup", 
        include = FALSE)), setup = NULL, chunks = list(list(label = "variance", 
        code = "ptime <- gameData$\"Play Time\"", opts = list(label = "\"variance\"", 
            exercise = "TRUE"), engine = "r")), code_check = NULL, 
        error_check = NULL, check = NULL, solution = NULL, tests = NULL, 
        options = list(eval = FALSE, echo = TRUE, results = "markup", 
            tidy = FALSE, tidy.opts = NULL, collapse = FALSE, prompt = FALSE, 
            comment = NA, highlight = FALSE, size = "normalsize", 
            background = "#F7F7F7", strip.white = TRUE, cache = 0, 
            cache.path = "tutorial_page_cache/html/", cache.vars = NULL, 
            cache.lazy = TRUE, dependson = NULL, autodep = FALSE, 
            cache.rebuild = FALSE, fig.keep = "high", fig.show = "asis", 
            fig.align = "default", fig.path = "tutorial_page_files/figure-html/", 
            dev = "png", dev.args = NULL, dpi = 192, fig.ext = "png", 
            fig.width = 6.5, fig.height = 4, fig.env = "figure", 
            fig.cap = NULL, fig.scap = NULL, fig.lp = "fig:", fig.subcap = NULL, 
            fig.pos = "", out.width = 624, out.height = NULL, out.extra = NULL, 
            fig.retina = 2, external = TRUE, sanitize = FALSE, interval = 1, 
            aniopts = "controls,loop", warning = TRUE, error = FALSE, 
            message = TRUE, render = NULL, ref.label = NULL, child = NULL, 
            engine = "r", split = FALSE, include = TRUE, purl = TRUE, 
            max.print = 1000, label = "variance", exercise = TRUE, 
            code = "ptime <- gameData$\"Play Time\"", out.width.px = 624, 
            out.height.px = 384, params.src = "variance, exercise=TRUE", 
            fig.num = 0, exercise.df_print = "paged", exercise.checker = "NULL"), 
        engine = "r", version = "4"), class = c("r", "tutorial_exercise"
    )))
    </script>
     
    <script type="application/shiny-prerendered" data-context="server">
    `tutorial-exercise-standard-deviation-result` <- learnr:::setup_exercise_handler(reactive(req(input$`tutorial-exercise-standard-deviation-code-editor`)), session)
    output$`tutorial-exercise-standard-deviation-output` <- renderUI({
      `tutorial-exercise-standard-deviation-result`()
    })
    </script>
    
    
    <script type="application/shiny-prerendered" data-context="server">
    learnr:::store_exercise_cache(structure(list(label = "standard-deviation", global_setup = structure(c("library(learnr)", 
    "library(readxl)", "library(\"ggplot2\")", "options(scipen = 10)", 
    "gameData <- read_excel(\"bgg_dataset.xlsx\", sheet = \"Sheet\")", 
    "knitr::opts_chunk$set(echo = FALSE)"), chunk_opts = list(label = "setup", 
        include = FALSE)), setup = NULL, chunks = list(list(label = "standard-deviation", 
        code = "ptime <- gameData$\"Play Time\"", opts = list(label = "\"standard-deviation\"", 
            exercise = "TRUE"), engine = "r")), code_check = NULL, 
        error_check = NULL, check = NULL, solution = NULL, tests = NULL, 
        options = list(eval = FALSE, echo = TRUE, results = "markup", 
            tidy = FALSE, tidy.opts = NULL, collapse = FALSE, prompt = FALSE, 
            comment = NA, highlight = FALSE, size = "normalsize", 
            background = "#F7F7F7", strip.white = TRUE, cache = 0, 
            cache.path = "tutorial_page_cache/html/", cache.vars = NULL, 
            cache.lazy = TRUE, dependson = NULL, autodep = FALSE, 
            cache.rebuild = FALSE, fig.keep = "high", fig.show = "asis", 
            fig.align = "default", fig.path = "tutorial_page_files/figure-html/", 
            dev = "png", dev.args = NULL, dpi = 192, fig.ext = "png", 
            fig.width = 6.5, fig.height = 4, fig.env = "figure", 
            fig.cap = NULL, fig.scap = NULL, fig.lp = "fig:", fig.subcap = NULL, 
            fig.pos = "", out.width = 624, out.height = NULL, out.extra = NULL, 
            fig.retina = 2, external = TRUE, sanitize = FALSE, interval = 1, 
            aniopts = "controls,loop", warning = TRUE, error = FALSE, 
            message = TRUE, render = NULL, ref.label = NULL, child = NULL, 
            engine = "r", split = FALSE, include = TRUE, purl = TRUE, 
            max.print = 1000, label = "standard-deviation", exercise = TRUE, 
            code = "ptime <- gameData$\"Play Time\"", out.width.px = 624, 
            out.height.px = 384, params.src = "standard-deviation, exercise=TRUE", 
            fig.num = 0, exercise.df_print = "paged", exercise.checker = "NULL"), 
        engine = "r", version = "4"), class = c("r", "tutorial_exercise"
    )))
    </script>
     
    <script type="application/shiny-prerendered" data-context="server">
    `tutorial-exercise-linear-regression-result` <- learnr:::setup_exercise_handler(reactive(req(input$`tutorial-exercise-linear-regression-code-editor`)), session)
    output$`tutorial-exercise-linear-regression-output` <- renderUI({
      `tutorial-exercise-linear-regression-result`()
    })
    </script>
    
    
    <script type="application/shiny-prerendered" data-context="server">
    learnr:::store_exercise_cache(structure(list(label = "linear-regression", global_setup = structure(c("library(learnr)", 
    "library(readxl)", "library(\"ggplot2\")", "options(scipen = 10)", 
    "gameData <- read_excel(\"bgg_dataset.xlsx\", sheet = \"Sheet\")", 
    "knitr::opts_chunk$set(echo = FALSE)"), chunk_opts = list(label = "setup", 
        include = FALSE)), setup = NULL, chunks = list(list(label = "linear-regression", 
        code = "raters <- gameData$\"Users Rated\"\nowned <- gameData$\"Owned Users\"", 
        opts = list(label = "\"linear-regression\"", exercise = "TRUE"), 
        engine = "r")), code_check = NULL, error_check = NULL, check = NULL, 
        solution = NULL, tests = NULL, options = list(eval = FALSE, 
            echo = TRUE, results = "markup", tidy = FALSE, tidy.opts = NULL, 
            collapse = FALSE, prompt = FALSE, comment = NA, highlight = FALSE, 
            size = "normalsize", background = "#F7F7F7", strip.white = TRUE, 
            cache = 0, cache.path = "tutorial_page_cache/html/", 
            cache.vars = NULL, cache.lazy = TRUE, dependson = NULL, 
            autodep = FALSE, cache.rebuild = FALSE, fig.keep = "high", 
            fig.show = "asis", fig.align = "default", fig.path = "tutorial_page_files/figure-html/", 
            dev = "png", dev.args = NULL, dpi = 192, fig.ext = "png", 
            fig.width = 6.5, fig.height = 4, fig.env = "figure", 
            fig.cap = NULL, fig.scap = NULL, fig.lp = "fig:", fig.subcap = NULL, 
            fig.pos = "", out.width = 624, out.height = NULL, out.extra = NULL, 
            fig.retina = 2, external = TRUE, sanitize = FALSE, interval = 1, 
            aniopts = "controls,loop", warning = TRUE, error = FALSE, 
            message = TRUE, render = NULL, ref.label = NULL, child = NULL, 
            engine = "r", split = FALSE, include = TRUE, purl = TRUE, 
            max.print = 1000, label = "linear-regression", exercise = TRUE, 
            code = c("raters <- gameData$\"Users Rated\"", "owned <- gameData$\"Owned Users\""
            ), out.width.px = 624, out.height.px = 384, params.src = "linear-regression, exercise=TRUE", 
            fig.num = 0, exercise.df_print = "paged", exercise.checker = "NULL"), 
        engine = "r", version = "4"), class = c("r", "tutorial_exercise"
    )))
    </script>
     
    <script type="application/shiny-prerendered" data-context="server">
    `tutorial-exercise-lm-plot-result` <- learnr:::setup_exercise_handler(reactive(req(input$`tutorial-exercise-lm-plot-code-editor`)), session)
    output$`tutorial-exercise-lm-plot-output` <- renderUI({
      `tutorial-exercise-lm-plot-result`()
    })
    </script>
    
    
    <script type="application/shiny-prerendered" data-context="server">
    learnr:::store_exercise_cache(structure(list(label = "lm-plot", global_setup = structure(c("library(learnr)", 
    "library(readxl)", "library(\"ggplot2\")", "options(scipen = 10)", 
    "gameData <- read_excel(\"bgg_dataset.xlsx\", sheet = \"Sheet\")", 
    "knitr::opts_chunk$set(echo = FALSE)"), chunk_opts = list(label = "setup", 
        include = FALSE)), setup = NULL, chunks = list(list(label = "lm-plot", 
        code = "raters <- gameData$\"Users Rated\"\nowned <- gameData$\"Owned Users\"\ncavg <- gameData$\"Complexity Average\"\nx = lm()\nplot(, , pch = 16, col = \"blue\")\n", 
        opts = list(label = "\"lm-plot\"", exercise = "TRUE", exercise.lines = "5"), 
        engine = "r")), code_check = NULL, error_check = NULL, check = NULL, 
        solution = NULL, tests = NULL, options = list(eval = FALSE, 
            echo = TRUE, results = "markup", tidy = FALSE, tidy.opts = NULL, 
            collapse = FALSE, prompt = FALSE, comment = NA, highlight = FALSE, 
            size = "normalsize", background = "#F7F7F7", strip.white = TRUE, 
            cache = 0, cache.path = "tutorial_page_cache/html/", 
            cache.vars = NULL, cache.lazy = TRUE, dependson = NULL, 
            autodep = FALSE, cache.rebuild = FALSE, fig.keep = "high", 
            fig.show = "asis", fig.align = "default", fig.path = "tutorial_page_files/figure-html/", 
            dev = "png", dev.args = NULL, dpi = 192, fig.ext = "png", 
            fig.width = 6.5, fig.height = 4, fig.env = "figure", 
            fig.cap = NULL, fig.scap = NULL, fig.lp = "fig:", fig.subcap = NULL, 
            fig.pos = "", out.width = 624, out.height = NULL, out.extra = NULL, 
            fig.retina = 2, external = TRUE, sanitize = FALSE, interval = 1, 
            aniopts = "controls,loop", warning = TRUE, error = FALSE, 
            message = TRUE, render = NULL, ref.label = NULL, child = NULL, 
            engine = "r", split = FALSE, include = TRUE, purl = TRUE, 
            max.print = 1000, label = "lm-plot", exercise = TRUE, 
            exercise.lines = 5, code = c("raters <- gameData$\"Users Rated\"", 
            "owned <- gameData$\"Owned Users\"", "cavg <- gameData$\"Complexity Average\"", 
            "x = lm()", "plot(, , pch = 16, col = \"blue\")", ""), 
            out.width.px = 624, out.height.px = 384, params.src = "lm-plot, exercise=TRUE, exercise.lines=5", 
            fig.num = 0, exercise.df_print = "paged", exercise.checker = "NULL"), 
        engine = "r", version = "4"), class = c("r", "tutorial_exercise"
    )))
    </script>
     
    <script type="application/shiny-prerendered" data-context="server">
    `tutorial-exercise-hypothesis-test-result` <- learnr:::setup_exercise_handler(reactive(req(input$`tutorial-exercise-hypothesis-test-code-editor`)), session)
    output$`tutorial-exercise-hypothesis-test-output` <- renderUI({
      `tutorial-exercise-hypothesis-test-result`()
    })
    </script>
    
    
    <script type="application/shiny-prerendered" data-context="server">
    learnr:::store_exercise_cache(structure(list(label = "hypothesis-test", global_setup = structure(c("library(learnr)", 
    "library(readxl)", "library(\"ggplot2\")", "options(scipen = 10)", 
    "gameData <- read_excel(\"bgg_dataset.xlsx\", sheet = \"Sheet\")", 
    "knitr::opts_chunk$set(echo = FALSE)"), chunk_opts = list(label = "setup", 
        include = FALSE)), setup = NULL, chunks = list(list(label = "hypothesis-test", 
        code = "cavg <- gameData$\"Complexity Average\"\nowned <- gameData$\"Owned Users\"\nptime <- gameData$\"Play Time\"", 
        opts = list(label = "\"hypothesis-test\"", exercise = "TRUE", 
            exercise.lines = "4"), engine = "r")), code_check = NULL, 
        error_check = NULL, check = NULL, solution = NULL, tests = NULL, 
        options = list(eval = FALSE, echo = TRUE, results = "markup", 
            tidy = FALSE, tidy.opts = NULL, collapse = FALSE, prompt = FALSE, 
            comment = NA, highlight = FALSE, size = "normalsize", 
            background = "#F7F7F7", strip.white = TRUE, cache = 0, 
            cache.path = "tutorial_page_cache/html/", cache.vars = NULL, 
            cache.lazy = TRUE, dependson = NULL, autodep = FALSE, 
            cache.rebuild = FALSE, fig.keep = "high", fig.show = "asis", 
            fig.align = "default", fig.path = "tutorial_page_files/figure-html/", 
            dev = "png", dev.args = NULL, dpi = 192, fig.ext = "png", 
            fig.width = 6.5, fig.height = 4, fig.env = "figure", 
            fig.cap = NULL, fig.scap = NULL, fig.lp = "fig:", fig.subcap = NULL, 
            fig.pos = "", out.width = 624, out.height = NULL, out.extra = NULL, 
            fig.retina = 2, external = TRUE, sanitize = FALSE, interval = 1, 
            aniopts = "controls,loop", warning = TRUE, error = FALSE, 
            message = TRUE, render = NULL, ref.label = NULL, child = NULL, 
            engine = "r", split = FALSE, include = TRUE, purl = TRUE, 
            max.print = 1000, label = "hypothesis-test", exercise = TRUE, 
            exercise.lines = 4, code = c("cavg <- gameData$\"Complexity Average\"", 
            "owned <- gameData$\"Owned Users\"", "ptime <- gameData$\"Play Time\""
            ), out.width.px = 624, out.height.px = 384, params.src = "hypothesis-test, exercise=TRUE, exercise.lines=4", 
            fig.num = 0, exercise.df_print = "paged", exercise.checker = "NULL"), 
        engine = "r", version = "4"), class = c("r", "tutorial_exercise"
    )))
    </script>
     
    <script type="application/shiny-prerendered" data-context="server">
    learnr:::question_prerendered_chunk(structure(list(type = "learnr_radio", label = "hypothesis-quiz-1", 
        question = structure("Spiele mit hoeherem Complexity Average haben eine niedrigere Anzahl von Owned Users.", html = TRUE, class = c("html", 
        "character")), answers = list(structure(list(id = "lnr_ans_9bb2259", 
            option = "Wahr", value = "Wahr", label = structure("Wahr", html = TRUE, class = c("html", 
            "character")), correct = TRUE, message = NULL, type = "literal"), class = c("tutorial_question_answer", 
        "tutorial_quiz_answer")), structure(list(id = "lnr_ans_e13f1f", 
            option = "Falsch", value = "Falsch", label = structure("Falsch", html = TRUE, class = c("html", 
            "character")), correct = FALSE, message = NULL, type = "literal"), class = c("tutorial_question_answer", 
        "tutorial_quiz_answer"))), button_labels = list(submit = structure("<span data-i18n=\"button.questionsubmit\">Submit Answer<\u002fspan>", html = TRUE, class = c("html", 
        "character")), try_again = structure("<span data-i18n=\"button.questiontryagain\">Try Again<\u002fspan>", html = TRUE, class = c("html", 
        "character"))), messages = list(correct = structure("Correct!", html = TRUE, class = c("html", 
        "character")), try_again = structure("Incorrect", html = TRUE, class = c("html", 
        "character")), incorrect = structure("Incorrect", html = TRUE, class = c("html", 
        "character")), message = NULL, post_message = NULL), ids = list(
            answer = "hypothesis-quiz-1-answer", question = "hypothesis-quiz-1"), 
        loading = NULL, random_answer_order = FALSE, allow_retry = FALSE, 
        seed = 1536608112.28446, options = list()), class = c("learnr_radio", 
    "tutorial_question")), session = session)
    </script>
    
    
    <script type="application/shiny-prerendered" data-context="server">
    learnr:::question_prerendered_chunk(structure(list(type = "learnr_radio", label = "hypothesis-quiz-2", 
        question = structure("Spiele mit hoeherem Complexity Average haben hoehere Play Time.", html = TRUE, class = c("html", 
        "character")), answers = list(structure(list(id = "lnr_ans_cf287ea", 
            option = "Wahr", value = "Wahr", label = structure("Wahr", html = TRUE, class = c("html", 
            "character")), correct = FALSE, message = NULL, type = "literal"), class = c("tutorial_question_answer", 
        "tutorial_quiz_answer")), structure(list(id = "lnr_ans_73903cd", 
            option = "Falsch", value = "Falsch", label = structure("Falsch", html = TRUE, class = c("html", 
            "character")), correct = TRUE, message = NULL, type = "literal"), class = c("tutorial_question_answer", 
        "tutorial_quiz_answer"))), button_labels = list(submit = structure("<span data-i18n=\"button.questionsubmit\">Submit Answer<\u002fspan>", html = TRUE, class = c("html", 
        "character")), try_again = structure("<span data-i18n=\"button.questiontryagain\">Try Again<\u002fspan>", html = TRUE, class = c("html", 
        "character"))), messages = list(correct = structure("Correct!", html = TRUE, class = c("html", 
        "character")), try_again = structure("Incorrect", html = TRUE, class = c("html", 
        "character")), incorrect = structure("Incorrect", html = TRUE, class = c("html", 
        "character")), message = NULL, post_message = NULL), ids = list(
            answer = "hypothesis-quiz-2-answer", question = "hypothesis-quiz-2"), 
        loading = NULL, random_answer_order = FALSE, allow_retry = FALSE, 
        seed = 1942667023.09538, options = list()), class = c("learnr_radio", 
    "tutorial_question")), session = session)
    </script>
     
    <script type="application/shiny-prerendered" data-context="server">
    `tutorial-exercise-plotExercise-result` <- learnr:::setup_exercise_handler(reactive(req(input$`tutorial-exercise-plotExercise-code-editor`)), session)
    output$`tutorial-exercise-plotExercise-output` <- renderUI({
      `tutorial-exercise-plotExercise-result`()
    })
    </script>
    
    
    <script type="application/shiny-prerendered" data-context="server">
    learnr:::store_exercise_cache(structure(list(label = "plotExercise", global_setup = structure(c("library(learnr)", 
    "library(readxl)", "library(\"ggplot2\")", "options(scipen = 10)", 
    "gameData <- read_excel(\"bgg_dataset.xlsx\", sheet = \"Sheet\")", 
    "knitr::opts_chunk$set(echo = FALSE)"), chunk_opts = list(label = "setup", 
        include = FALSE)), setup = NULL, chunks = list(list(label = "plotExercise", 
        code = "", opts = list(label = "\"plotExercise\"", exercise = "TRUE"), 
        engine = "r")), code_check = NULL, error_check = NULL, check = NULL, 
        solution = NULL, tests = NULL, options = list(eval = FALSE, 
            echo = TRUE, results = "markup", tidy = FALSE, tidy.opts = NULL, 
            collapse = FALSE, prompt = FALSE, comment = NA, highlight = FALSE, 
            size = "normalsize", background = "#F7F7F7", strip.white = TRUE, 
            cache = 0, cache.path = "tutorial_page_cache/html/", 
            cache.vars = NULL, cache.lazy = TRUE, dependson = NULL, 
            autodep = FALSE, cache.rebuild = FALSE, fig.keep = "high", 
            fig.show = "asis", fig.align = "default", fig.path = "tutorial_page_files/figure-html/", 
            dev = "png", dev.args = NULL, dpi = 192, fig.ext = "png", 
            fig.width = 6.5, fig.height = 4, fig.env = "figure", 
            fig.cap = NULL, fig.scap = NULL, fig.lp = "fig:", fig.subcap = NULL, 
            fig.pos = "", out.width = 624, out.height = NULL, out.extra = NULL, 
            fig.retina = 2, external = TRUE, sanitize = FALSE, interval = 1, 
            aniopts = "controls,loop", warning = TRUE, error = FALSE, 
            message = TRUE, render = NULL, ref.label = NULL, child = NULL, 
            engine = "r", split = FALSE, include = TRUE, purl = TRUE, 
            max.print = 1000, label = "plotExercise", exercise = TRUE, 
            code = "", out.width.px = 624, out.height.px = 384, params.src = "plotExercise, exercise=TRUE", 
            fig.num = 0L, exercise.df_print = "paged", exercise.checker = "NULL"), 
        engine = "r", version = "4"), class = c("r", "tutorial_exercise"
    )))
    </script>
     
    <script type="application/shiny-prerendered" data-context="server">
    learnr:::question_prerendered_chunk(structure(list(type = "learnr_radio", label = "quiz-ggplot-1", 
        question = structure("Was ist der Median im Diagramm?", html = TRUE, class = c("html", 
        "character")), answers = list(structure(list(id = "lnr_ans_8e6a4e1", 
            option = "ein vertikaler Strich", value = "ein vertikaler Strich", 
            label = structure("ein vertikaler Strich", html = TRUE, class = c("html", 
            "character")), correct = FALSE, message = NULL, type = "literal"), class = c("tutorial_question_answer", 
        "tutorial_quiz_answer")), structure(list(id = "lnr_ans_de7bf86", 
            option = "die Höhe der Box", value = "die Höhe der Box", 
            label = structure("die Höhe der Box", html = TRUE, class = c("html", 
            "character")), correct = FALSE, message = NULL, type = "literal"), class = c("tutorial_question_answer", 
        "tutorial_quiz_answer")), structure(list(id = "lnr_ans_9cbbb0", 
            option = "ein horizontaler Strich in der Mitter der Box", 
            value = "ein horizontaler Strich in der Mitter der Box", 
            label = structure("ein horizontaler Strich in der Mitter der Box", html = TRUE, class = c("html", 
            "character")), correct = TRUE, message = NULL, type = "literal"), class = c("tutorial_question_answer", 
        "tutorial_quiz_answer")), structure(list(id = "lnr_ans_de60dda", 
            option = "das untere Ende der Box", value = "das untere Ende der Box", 
            label = structure("das untere Ende der Box", html = TRUE, class = c("html", 
            "character")), correct = FALSE, message = NULL, type = "literal"), class = c("tutorial_question_answer", 
        "tutorial_quiz_answer"))), button_labels = list(submit = structure("<span data-i18n=\"button.questionsubmit\">Submit Answer<\u002fspan>", html = TRUE, class = c("html", 
        "character")), try_again = structure("<span data-i18n=\"button.questiontryagain\">Try Again<\u002fspan>", html = TRUE, class = c("html", 
        "character"))), messages = list(correct = structure("Correct!", html = TRUE, class = c("html", 
        "character")), try_again = structure("Incorrect", html = TRUE, class = c("html", 
        "character")), incorrect = structure("Incorrect", html = TRUE, class = c("html", 
        "character")), message = NULL, post_message = NULL), ids = list(
            answer = "quiz-ggplot-1-answer", question = "quiz-ggplot-1"), 
        loading = NULL, random_answer_order = FALSE, allow_retry = FALSE, 
        seed = 1905845529.61252, options = list()), class = c("learnr_radio", 
    "tutorial_question")), session = session)
    </script>
    
    
    <script type="application/shiny-prerendered" data-context="server">
    learnr:::question_prerendered_chunk(structure(list(type = "learnr_checkbox", label = "quiz-ggplot-2", 
        question = structure("Was sind die Quartile im Diagramm?(Es sind mehrere Antworten möglich)", html = TRUE, class = c("html", 
        "character")), answers = list(structure(list(id = "lnr_ans_2d02475", 
            option = "das obere Ende der Box", value = "das obere Ende der Box", 
            label = structure("das obere Ende der Box", html = TRUE, class = c("html", 
            "character")), correct = TRUE, message = NULL, type = "literal"), class = c("tutorial_question_answer", 
        "tutorial_quiz_answer")), structure(list(id = "lnr_ans_f1ec212", 
            option = "Punkte oberhalb der Box", value = "Punkte oberhalb der Box", 
            label = structure("Punkte oberhalb der Box", html = TRUE, class = c("html", 
            "character")), correct = FALSE, message = NULL, type = "literal"), class = c("tutorial_question_answer", 
        "tutorial_quiz_answer")), structure(list(id = "lnr_ans_c2c2414", 
            option = "ein Drittel des vertikalen Strichs", value = "ein Drittel des vertikalen Strichs", 
            label = structure("ein Drittel des vertikalen Strichs", html = TRUE, class = c("html", 
            "character")), correct = FALSE, message = NULL, type = "literal"), class = c("tutorial_question_answer", 
        "tutorial_quiz_answer")), structure(list(id = "lnr_ans_97277dc", 
            option = "das untere Ende der Box", value = "das untere Ende der Box", 
            label = structure("das untere Ende der Box", html = TRUE, class = c("html", 
            "character")), correct = TRUE, message = NULL, type = "literal"), class = c("tutorial_question_answer", 
        "tutorial_quiz_answer"))), button_labels = list(submit = structure("<span data-i18n=\"button.questionsubmit\">Submit Answer<\u002fspan>", html = TRUE, class = c("html", 
        "character")), try_again = structure("<span data-i18n=\"button.questiontryagain\">Try Again<\u002fspan>", html = TRUE, class = c("html", 
        "character"))), messages = list(correct = structure("Correct!", html = TRUE, class = c("html", 
        "character")), try_again = structure("Incorrect. Be sure to select every correct answer.", html = TRUE, class = c("html", 
        "character")), incorrect = structure("Incorrect", html = TRUE, class = c("html", 
        "character")), message = NULL, post_message = NULL), ids = list(
            answer = "quiz-ggplot-2-answer", question = "quiz-ggplot-2"), 
        loading = NULL, random_answer_order = FALSE, allow_retry = FALSE, 
        seed = 1246543396.91953, options = list()), class = c("learnr_checkbox", 
    "tutorial_question")), session = session)
    </script>
     
    <script type="application/shiny-prerendered" data-context="server">
    learnr:::question_prerendered_chunk(structure(list(type = "learnr_radio", label = "quiz-ggplot-3", 
        question = structure("Was sind die Maximalwerte im Diagramm?", html = TRUE, class = c("html", 
        "character")), answers = list(structure(list(id = "lnr_ans_30b8dd6", 
            option = "Punkte oberhalb der Box", value = "Punkte oberhalb der Box", 
            label = structure("Punkte oberhalb der Box", html = TRUE, class = c("html", 
            "character")), correct = FALSE, message = NULL, type = "literal"), class = c("tutorial_question_answer", 
        "tutorial_quiz_answer")), structure(list(id = "lnr_ans_aeaac7b", 
            option = "die Spitzen des vertikalen Strichs", value = "die Spitzen des vertikalen Strichs", 
            label = structure("die Spitzen des vertikalen Strichs", html = TRUE, class = c("html", 
            "character")), correct = TRUE, message = NULL, type = "literal"), class = c("tutorial_question_answer", 
        "tutorial_quiz_answer")), structure(list(id = "lnr_ans_73781c9", 
            option = "die x-Achse und die y-Achse", value = "die x-Achse und die y-Achse", 
            label = structure("die x-Achse und die y-Achse", html = TRUE, class = c("html", 
            "character")), correct = FALSE, message = NULL, type = "literal"), class = c("tutorial_question_answer", 
        "tutorial_quiz_answer")), structure(list(id = "lnr_ans_bacc9de", 
            option = "die Flaeche der Box", value = "die Flaeche der Box", 
            label = structure("die Flaeche der Box", html = TRUE, class = c("html", 
            "character")), correct = FALSE, message = NULL, type = "literal"), class = c("tutorial_question_answer", 
        "tutorial_quiz_answer"))), button_labels = list(submit = structure("<span data-i18n=\"button.questionsubmit\">Submit Answer<\u002fspan>", html = TRUE, class = c("html", 
        "character")), try_again = structure("<span data-i18n=\"button.questiontryagain\">Try Again<\u002fspan>", html = TRUE, class = c("html", 
        "character"))), messages = list(correct = structure("Correct!", html = TRUE, class = c("html", 
        "character")), try_again = structure("Incorrect", html = TRUE, class = c("html", 
        "character")), incorrect = structure("Incorrect", html = TRUE, class = c("html", 
        "character")), message = NULL, post_message = NULL), ids = list(
            answer = "quiz-ggplot-3-answer", question = "quiz-ggplot-3"), 
        loading = NULL, random_answer_order = FALSE, allow_retry = FALSE, 
        seed = 397739784.814788, options = list()), class = c("learnr_radio", 
    "tutorial_question")), session = session)
    </script>
    
    
    <script type="application/shiny-prerendered" data-context="server">
    learnr:::question_prerendered_chunk(structure(list(type = "learnr_radio", label = "quiz-ggplot-4", 
        question = structure("An was erkennt man im Diagramm die Ausreißer?", html = TRUE, class = c("html", 
        "character")), answers = list(structure(list(id = "lnr_ans_64c8763", 
            option = "es sind Punkte außerhalb der Box", value = "es sind Punkte außerhalb der Box", 
            label = structure("es sind Punkte außerhalb der Box", html = TRUE, class = c("html", 
            "character")), correct = TRUE, message = NULL, type = "literal"), class = c("tutorial_question_answer", 
        "tutorial_quiz_answer")), structure(list(id = "lnr_ans_791bcb0", 
            option = "an der Größe der Box", value = "an der Größe der Box", 
            label = structure("an der Größe der Box", html = TRUE, class = c("html", 
            "character")), correct = FALSE, message = NULL, type = "literal"), class = c("tutorial_question_answer", 
        "tutorial_quiz_answer")), structure(list(id = "lnr_ans_2a2548c", 
            option = "durch schlechtes Verhalten", value = "durch schlechtes Verhalten", 
            label = structure("durch schlechtes Verhalten", html = TRUE, class = c("html", 
            "character")), correct = FALSE, message = NULL, type = "literal"), class = c("tutorial_question_answer", 
        "tutorial_quiz_answer"))), button_labels = list(submit = structure("<span data-i18n=\"button.questionsubmit\">Submit Answer<\u002fspan>", html = TRUE, class = c("html", 
        "character")), try_again = structure("<span data-i18n=\"button.questiontryagain\">Try Again<\u002fspan>", html = TRUE, class = c("html", 
        "character"))), messages = list(correct = structure("Correct!", html = TRUE, class = c("html", 
        "character")), try_again = structure("Incorrect", html = TRUE, class = c("html", 
        "character")), incorrect = structure("Incorrect", html = TRUE, class = c("html", 
        "character")), message = NULL, post_message = NULL), ids = list(
            answer = "quiz-ggplot-4-answer", question = "quiz-ggplot-4"), 
        loading = NULL, random_answer_order = FALSE, allow_retry = FALSE, 
        seed = 171218747.92027, options = list()), class = c("learnr_radio", 
    "tutorial_question")), session = session)
    </script>
     
    <script type="application/shiny-prerendered" data-context="server">
    `tutorial-exercise-barplotExercise-result` <- learnr:::setup_exercise_handler(reactive(req(input$`tutorial-exercise-barplotExercise-code-editor`)), session)
    output$`tutorial-exercise-barplotExercise-output` <- renderUI({
      `tutorial-exercise-barplotExercise-result`()
    })
    </script>
    
    
    <script type="application/shiny-prerendered" data-context="server">
    learnr:::store_exercise_cache(structure(list(label = "barplotExercise", global_setup = structure(c("library(learnr)", 
    "library(readxl)", "library(\"ggplot2\")", "options(scipen = 10)", 
    "gameData <- read_excel(\"bgg_dataset.xlsx\", sheet = \"Sheet\")", 
    "knitr::opts_chunk$set(echo = FALSE)"), chunk_opts = list(label = "setup", 
        include = FALSE)), setup = NULL, chunks = list(list(label = "barplotExercise", 
        code = "\n", opts = list(label = "\"barplotExercise\"", exercise = "TRUE"), 
        engine = "r")), code_check = NULL, error_check = NULL, check = NULL, 
        solution = NULL, tests = NULL, options = list(eval = FALSE, 
            echo = TRUE, results = "markup", tidy = FALSE, tidy.opts = NULL, 
            collapse = FALSE, prompt = FALSE, comment = NA, highlight = FALSE, 
            size = "normalsize", background = "#F7F7F7", strip.white = TRUE, 
            cache = 0, cache.path = "tutorial_page_cache/html/", 
            cache.vars = NULL, cache.lazy = TRUE, dependson = NULL, 
            autodep = FALSE, cache.rebuild = FALSE, fig.keep = "high", 
            fig.show = "asis", fig.align = "default", fig.path = "tutorial_page_files/figure-html/", 
            dev = "png", dev.args = NULL, dpi = 192, fig.ext = "png", 
            fig.width = 6.5, fig.height = 4, fig.env = "figure", 
            fig.cap = NULL, fig.scap = NULL, fig.lp = "fig:", fig.subcap = NULL, 
            fig.pos = "", out.width = 624, out.height = NULL, out.extra = NULL, 
            fig.retina = 2, external = TRUE, sanitize = FALSE, interval = 1, 
            aniopts = "controls,loop", warning = TRUE, error = FALSE, 
            message = TRUE, render = NULL, ref.label = NULL, child = NULL, 
            engine = "r", split = FALSE, include = TRUE, purl = TRUE, 
            max.print = 1000, label = "barplotExercise", exercise = TRUE, 
            code = c("", ""), out.width.px = 624, out.height.px = 384, 
            params.src = "barplotExercise, exercise=TRUE", fig.num = 0L, 
            exercise.df_print = "paged", exercise.checker = "NULL"), 
        engine = "r", version = "4"), class = c("r", "tutorial_exercise"
    )))
    </script>
    </p>
    <!--html_preserve-->
    <script type="application/shiny-prerendered" data-context="dependencies">
    {"type":"list","attributes":{},"value":[{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["header-attrs"]},{"type":"character","attributes":{},"value":["2.25"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["rmd/h/pandoc"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["header-attrs.js"]},{"type":"NULL"},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["rmarkdown"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["2.25"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["jquery"]},{"type":"character","attributes":{},"value":["3.6.0"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["lib/3.6.0"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["jquery-3.6.0.min.js"]},{"type":"NULL"},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["jquerylib"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["0.1.4"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["bootstrap"]},{"type":"character","attributes":{},"value":["3.3.5"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["rmd/h/bootstrap"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["viewport"]}},"value":[{"type":"character","attributes":{},"value":["width=device-width, initial-scale=1"]}]},{"type":"character","attributes":{},"value":["js/bootstrap.min.js","shim/html5shiv.min.js","shim/respond.min.js"]},{"type":"character","attributes":{},"value":["css/cerulean.min.css"]},{"type":"character","attributes":{},"value":["<style>h1 {font-size: 34px;}\n       h1.title {font-size: 38px;}\n       h2 {font-size: 30px;}\n       h3 {font-size: 24px;}\n       h4 {font-size: 18px;}\n       h5 {font-size: 16px;}\n       h6 {font-size: 12px;}\n       code {color: inherit; background-color: rgba(0, 0, 0, 0.04);}\n       pre:not([class]) { background-color: white }<\/style>"]},{"type":"NULL"},{"type":"character","attributes":{},"value":["rmarkdown"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["2.25"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["pagedtable"]},{"type":"character","attributes":{},"value":["1.1"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["rmd/h/pagedtable-1.1"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["js/pagedtable.js"]},{"type":"character","attributes":{},"value":["css/pagedtable.css"]},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["rmarkdown"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["2.25"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["highlightjs"]},{"type":"character","attributes":{},"value":["9.12.0"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["rmd/h/highlightjs"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["highlight.js"]},{"type":"character","attributes":{},"value":["textmate.css"]},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["rmarkdown"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["2.25"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["tutorial"]},{"type":"character","attributes":{},"value":["0.11.5"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["lib/tutorial"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["tutorial.js"]},{"type":"character","attributes":{},"value":["tutorial.css"]},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["learnr"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["0.11.5"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["i18n"]},{"type":"character","attributes":{},"value":["21.6.10"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["lib/i18n"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["i18next.min.js","tutorial-i18n-init.js"]},{"type":"NULL"},{"type":"character","attributes":{},"value":["<script id=\"i18n-cstm-trns\" type=\"application/json\">{\"language\":\"en\",\"resources\":{\"en\":{\"translation\":{\"button\":{\"runcode\":\"Run Code\",\"runcodetitle\":\"$t(button.runcode) ({{kbd}})\",\"hint\":\"Hint\",\"hint_plural\":\"Hints\",\"hinttitle\":\"$t(button.hint)\",\"hintnext\":\"Next Hint\",\"hintprev\":\"Previous Hint\",\"solution\":\"Solution\",\"solutiontitle\":\"$t(button.solution)\",\"copyclipboard\":\"Copy to Clipboard\",\"startover\":\"Start Over\",\"startovertitle\":\"$t(button.startover)\",\"continue\":\"Continue\",\"submitanswer\":\"Submit Answer\",\"submitanswertitle\":\"$t(button.submitanswer)\",\"previoustopic\":\"Previous Topic\",\"nexttopic\":\"Next Topic\",\"questionsubmit\":\"$t(button.submitanswer)\",\"questiontryagain\":\"Try Again\"},\"text\":{\"startover\":\"Start Over\",\"areyousure\":\"Are you sure you want to start over? (all exercise progress will be reset)\",\"youmustcomplete\":\"You must complete the\",\"exercise\":\"exercise\",\"exercise_plural\":\"exercises\",\"inthissection\":\"in this section before continuing.\",\"code\":\"Code\",\"enginecap\":\"{{engine}} $t(text.code)\",\"quiz\":\"Quiz\",\"blank\":\"blank\",\"blank_plural\":\"blanks\",\"exercisecontainsblank\":\"This exercise contains {{count}} $t(text.blank).\",\"pleasereplaceblank\":\"Please replace {{blank}} with valid code.\",\"unparsable\":\"It looks like this might not be valid R code. R cannot determine how to turn your text into a complete command. You may have forgotten to fill in a blank, to remove an underscore, to include a comma between arguments, or to close an opening <code>&quot;<\\/code>, <code>'<\\/code>, <code>(<\\/code> or <code>{<\\/code> with a matching <code>&quot;<\\/code>, <code>'<\\/code>, <code>)<\\/code> or <code>}<\\/code>.\\n\",\"unparsablequotes\":\"<p>It looks like your R code contains specially formatted quotation marks or &quot;curly&quot; quotes (<code>{{character}}<\\/code>) around character strings, making your code invalid. R requires character values to be contained in straight quotation marks (<code>&quot;<\\/code> or <code>'<\\/code>).<\\/p> {{code}} <p>Don't worry, this is a common source of errors when you copy code from another app that applies its own formatting to text. You can try replacing the code on that line with the following. There may be other places that need to be fixed, too.<\\/p> {{suggestion}}\\n\",\"unparsableunicode\":\"<p>It looks like your R code contains an unexpected special character (<code>{{character}}<\\/code>) that makes your code invalid.<\\/p> {{code}} <p>Sometimes your code may contain a special character that looks like a regular character, especially if you copy and paste the code from another app. Try deleting the special character from your code and retyping it manually.<\\/p>\\n\",\"unparsableunicodesuggestion\":\"<p>It looks like your R code contains an unexpected special character (<code>{{character}}<\\/code>) that makes your code invalid.<\\/p> {{code}} <p>Sometimes your code may contain a special character that looks like a regular character, especially if you copy and paste the code from another app. You can try replacing the code on that line with the following. There may be other places that need to be fixed, too.<\\/p> {{suggestion}}\\n\",\"and\":\"and\",\"or\":\"or\",\"listcomma\":\", \",\"oxfordcomma\":\",\"}}},\"fr\":{\"translation\":{\"button\":{\"runcode\":\"Lancer le Code\",\"runcodetitle\":\"$t(button.runcode) ({{kbd}})\",\"hint\":\"Indication\",\"hint_plural\":\"Indications\",\"hinttitle\":\"$t(button.hint)\",\"hintnext\":\"Indication Suivante\",\"hintprev\":\"Indication Précédente\",\"solution\":\"Solution\",\"solutiontitle\":\"$t(button.solution)\",\"copyclipboard\":\"Copier dans le Presse-papier\",\"startover\":\"Recommencer\",\"startovertitle\":\"$t(button.startover)\",\"continue\":\"Continuer\",\"submitanswer\":\"Soumettre\",\"submitanswertitle\":\"$t(button.submitanswer)\",\"previoustopic\":\"Chapitre Précédent\",\"nexttopic\":\"Chapitre Suivant\",\"questionsubmit\":\"$t(button.submitanswer)\",\"questiontryagain\":\"Réessayer\"},\"text\":{\"startover\":\"Recommencer\",\"areyousure\":\"Êtes-vous certains de vouloir recommencer? (La progression sera remise à zéro)\",\"youmustcomplete\":\"Vous devez d'abord compléter\",\"exercise\":\"l'exercice\",\"exercise_plural\":\"des exercices\",\"inthissection\":\"de cette section avec de continuer.\",\"code\":\"Code\",\"enginecap\":\"$t(text.code) {{engine}}\",\"quiz\":\"Quiz\",\"and\":\"et\",\"or\":\"ou\",\"oxfordcomma\":\"\"}}},\"es\":{\"translation\":{\"button\":{\"runcode\":\"Ejecutar código\",\"runcodetitle\":\"$t(button.runcode) ({{kbd}})\",\"hint\":\"Pista\",\"hint_plural\":\"Pistas\",\"hinttitle\":\"$t(button.hint)\",\"hintnext\":\"Siguiente pista\",\"hintprev\":\"Pista anterior\",\"solution\":\"Solución\",\"solutiontitle\":\"$t(button.solution)\",\"copyclipboard\":\"Copiar al portapapeles\",\"startover\":\"Reiniciar\",\"startovertitle\":\"$t(button.startover)\",\"continue\":\"Continuar\",\"submitanswer\":\"Enviar respuesta\",\"submitanswertitle\":\"$t(button.submitanswer)\",\"previoustopic\":\"Tema anterior\",\"nexttopic\":\"Tema siguiente\",\"questionsubmit\":\"$t(button.submitanswer)\",\"questiontryagain\":\"Volver a intentar\"},\"text\":{\"startover\":\"Reiniciar\",\"areyousure\":\"¿De verdad quieres empezar de nuevo? (todo el progreso del ejercicio se perderá)\",\"youmustcomplete\":\"Debes completar\",\"exercise\":\"el ejercicio\",\"exercise_plural\":\"los ejercicios\",\"inthissection\":\"en esta sección antes de continuar.\",\"code\":\"Código\",\"enginecap\":\"$t(text.code) {{engine}}\",\"quiz\":\"Cuestionario\",\"and\":\"y\",\"or\":\"o\",\"oxfordcomma\":\"\"}}},\"pt\":{\"translation\":{\"button\":{\"runcode\":\"Executar código\",\"runcodetitle\":\"$t(button.runcode) ({{kbd}})\",\"hint\":\"Dica\",\"hint_plural\":\"Dicas\",\"hinttitle\":\"$t(button.hint)\",\"hintnext\":\"Próxima dica\",\"hintprev\":\"Dica anterior\",\"solution\":\"Solução\",\"solutiontitle\":\"$t(button.solution)\",\"copyclipboard\":\"Copiar para a área de transferência\",\"startover\":\"Reiniciar\",\"startovertitle\":\"$t(button.startover)\",\"continue\":\"Continuar\",\"submitanswer\":\"Enviar resposta\",\"submitanswertitle\":\"$t(button.submitanswer)\",\"previoustopic\":\"Tópico anterior\",\"nexttopic\":\"Próximo tópico\",\"questionsubmit\":\"$t(button.submitanswer)\",\"questiontryagain\":\"Tentar novamente\"},\"text\":{\"startover\":\"Reiniciar\",\"areyousure\":\"Tem certeza que deseja começar novamente? (todo o progresso feito será perdido)\",\"youmustcomplete\":\"Você deve completar\",\"exercise\":\"o exercício\",\"exercise_plural\":\"os exercícios\",\"inthissection\":\"nesta seção antes de continuar.\",\"code\":\"Código\",\"enginecap\":\"$t(text.code) {{engine}}\",\"quiz\":\"Quiz\",\"and\":\"e\",\"or\":\"ou\",\"oxfordcomma\":\"\"}}},\"tr\":{\"translation\":{\"button\":{\"runcode\":\"Çalıştırma Kodu\",\"runcodetitle\":\"$t(button.runcode) ({{kbd}})\",\"hint\":\"Ipucu\",\"hint_plural\":\"İpuçları\",\"hinttitle\":\"$t(button.hint)\",\"hintnext\":\"Sonraki İpucu\",\"hintprev\":\"Önceki İpucu\",\"solution\":\"Çözüm\",\"solutiontitle\":\"$t(button.solution)\",\"copyclipboard\":\"Pano'ya Kopyala\",\"startover\":\"Baştan Başlamak\",\"startovertitle\":\"$t(button.startover)\",\"continue\":\"Devam et\",\"submitanswer\":\"Cevabı onayla\",\"submitanswertitle\":\"$t(button.submitanswer)\",\"previoustopic\":\"Önceki Konu\",\"nexttopic\":\"Sonraki Konu\",\"questionsubmit\":\"$t(button.submitanswer)\",\"questiontryagain\":\"Tekrar Deneyin\"},\"text\":{\"startover\":\"Baştan Başlamak\",\"areyousure\":\"Baştan başlamak istediğinizden emin misiniz? (tüm egzersiz ilerlemesi kaybolacak)\",\"youmustcomplete\":\"Tamamlamalısın\",\"exercise\":\"egzersiz\",\"exercise_plural\":\"egzersizler\",\"inthissection\":\"devam etmeden önce bu bölümde\",\"code\":\"Kod\",\"enginecap\":\"$t(text.code) {{engine}}\",\"quiz\":\"Sınav\",\"oxfordcomma\":\"\"}}},\"emo\":{\"translation\":{\"button\":{\"runcode\":\"🏃\",\"runcodetitle\":\"$t(button.runcode) ({{kbd}})\",\"hint\":\"💡\",\"hint_plural\":\"$t(button.hint)\",\"hinttitle\":\"$t(button.hint)\",\"solution\":\"🎯\",\"solutiontitle\":\"$t(button.solution)\",\"copyclipboard\":\"📋\",\"startover\":\"⏮\",\"startovertitle\":\"Start Over\",\"continue\":\"✅\",\"submitanswer\":\"🆗\",\"submitanswertitle\":\"Submit Answer\",\"previoustopic\":\"⬅\",\"nexttopic\":\"➡\",\"questionsubmit\":\"$t(button.submitanswer)\",\"questiontryagain\":\"🔁\"},\"text\":{\"startover\":\"⏮\",\"areyousure\":\"🤔\",\"youmustcomplete\":\"⚠️ 👉 🧑‍💻\",\"exercise\":\"\",\"exercise_plural\":\"\",\"inthissection\":\"\",\"code\":\"💻\",\"enginecap\":\"$t(text.code) {{engine}}\",\"oxfordcomma\":\"\"}}},\"eu\":{\"translation\":{\"button\":{\"runcode\":\"Kodea egikaritu\",\"runcodetitle\":\"$t(button.runcode) ({{kbd}})\",\"hint\":\"Laguntza\",\"hint_plural\":\"Laguntza\",\"hinttitle\":\"$t(button.hint)\",\"hintnext\":\"Aurreko laguntza\",\"hintprev\":\"Hurrengo laguntza\",\"solution\":\"Ebazpena\",\"solutiontitle\":\"$t(button.solution)\",\"copyclipboard\":\"Arbelean kopiatu\",\"startover\":\"Berrabiarazi\",\"startovertitle\":\"$t(button.startover)\",\"continue\":\"Jarraitu\",\"submitanswer\":\"Erantzuna bidali\",\"submitanswertitle\":\"$t(button.submitanswer)\",\"previoustopic\":\"Aurreko atala\",\"nexttopic\":\"Hurrengo atala\",\"questionsubmit\":\"$t(button.submitanswer)\",\"questiontryagain\":\"Berriro saiatu\"},\"text\":{\"startover\":\"Berrabiarazi\",\"areyousure\":\"Berriro hasi nahi duzu? (egindako lana galdu egingo da)\",\"youmustcomplete\":\"Aurrera egin baino lehen atal honetako\",\"exercise\":\"ariketa egin behar duzu.\",\"exercise_plural\":\"ariketak egin behar dituzu.\",\"inthissection\":\"\",\"code\":\"Kodea\",\"enginecap\":\"$t(text.code) {{engine}}\",\"quiz\":\"Galdetegia\",\"oxfordcomma\":\"\"}}},\"de\":{\"translation\":{\"button\":{\"runcode\":\"Code ausführen\",\"runcodetitle\":\"$t(button.runcode) ({{kbd}})\",\"hint\":\"Tipp\",\"hint_plural\":\"Tipps\",\"hinttitle\":\"$t(button.hint)\",\"hintnext\":\"Nächster Tipp\",\"hintprev\":\"Vorheriger Tipp\",\"solution\":\"Lösung\",\"solutiontitle\":\"$t(button.solution)\",\"copyclipboard\":\"In die Zwischenablage kopieren\",\"startover\":\"Neustart\",\"startovertitle\":\"$t(button.startover)\",\"continue\":\"Weiter\",\"submitanswer\":\"Antwort einreichen\",\"submitanswertitle\":\"$t(button.submitanswer)\",\"previoustopic\":\"Vorheriges Kapitel\",\"nexttopic\":\"Nächstes Kapitel\",\"questionsubmit\":\"$t(button.submitanswer)\",\"questiontryagain\":\"Nochmal versuchen\"},\"text\":{\"startover\":\"Neustart\",\"areyousure\":\"Bist du sicher, dass du neustarten willst? (der gesamte Lernfortschritt wird gelöscht)\",\"youmustcomplete\":\"Vervollstädinge\",\"exercise\":\"die Übung\",\"exercise_plural\":\"die Übungen\",\"inthissection\":\"in diesem Kapitel, bevor du fortfährst.\",\"code\":\"Code\",\"enginecap\":\"$t(text.code) {{engine}}\",\"quiz\":\"Quiz\",\"blank\":\"Lücke\",\"blank_plural\":\"Lücken\",\"pleasereplaceblank\":\"Bitte ersetze {{blank}} mit gültigem Code.\",\"unparsable\":\"Dies scheint kein gültiger R Code zu sein. R kann deinen Text nicht in einen gültigen Befehl übersetzen. Du hast vielleicht vergessen, die Lücke zu füllen, einen Unterstrich zu entfernen, ein Komma zwischen Argumente zu setzen oder ein eröffnendes <code>&quot;<\\/code>, <code>'<\\/code>, <code>(<\\/code> oder <code>{<\\/code> mit einem zugehörigen <code>&quot;<\\/code>, <code>'<\\/code>, <code>)<\\/code> oder <code>}<\\/code> zu schließen.\\n\",\"and\":\"und\",\"or\":\"oder\",\"listcomma\":\", \",\"oxfordcomma\":\",\"}}},\"ko\":{\"translation\":{\"button\":{\"runcode\":\"코드 실행\",\"runcodetitle\":\"$t(button.runcode) ({{kbd}})\",\"hint\":\"힌트\",\"hint_plural\":\"힌트들\",\"hinttitle\":\"$t(button.hint)\",\"hintnext\":\"다음 힌트\",\"hintprev\":\"이전 힌트\",\"solution\":\"솔루션\",\"solutiontitle\":\"$t(button.solution)\",\"copyclipboard\":\"클립보드에 복사\",\"startover\":\"재학습\",\"startovertitle\":\"$t(button.startover)\",\"continue\":\"다음 학습으로\",\"submitanswer\":\"정답 제출\",\"submitanswertitle\":\"$t(button.submitanswer)\",\"previoustopic\":\"이전 토픽\",\"nexttopic\":\"다음 토픽\",\"questionsubmit\":\"$t(button.submitanswer)\",\"questiontryagain\":\"재시도\"},\"text\":{\"startover\":\"재학습\",\"areyousure\":\"다시 시작 하시겠습니까? (모든 예제의 진행 정보가 재설정됩니다)\",\"youmustcomplete\":\"당신은 완료해야 합니다\",\"exercise\":\"연습문제\",\"exercise_plural\":\"연습문제들\",\"inthissection\":\"이 섹션을 실행하기 전에\",\"code\":\"코드\",\"enginecap\":\"$t(text.code) {{engine}}\",\"quiz\":\"퀴즈\",\"blank\":\"공백\",\"blank_plural\":\"공백들\",\"exercisecontainsblank\":\"이 연습문제에는 {{count}}개의 $t(text.blank)이 포함되어 있습니다.\",\"pleasereplaceblank\":\"{{blank}}를 유효한 코드로 바꾸십시오.\",\"unparsable\":\"이것은 유효한 R 코드가 아닐 수 있습니다. R은 텍스트를 완전한 명령으로 변환하는 방법을 결정할 수 없습니다. 당신은 공백이나 밑줄을 대체하여 채우기, 인수를 컴마로 구분하기, 또는 <code>&quot;<\\/code>, <code>'<\\/code>, <code>(<\\/code> , <code>{<\\/code>로 시작하는 구문을 닫는 <code>&quot;<\\/code>, <code>'<\\/code>, <code>)<\\/code>, <code>}<\\/code>을 잊었을 수도 있습니다.\\n\",\"and\":\"그리고\",\"or\":\"혹은\",\"listcomma\":\", \",\"oxfordcomma\":\"\"}}},\"zh\":{\"translation\":{\"button\":{\"runcode\":\"运行代码\",\"runcodetitle\":\"$t(button.runcode) ({{kbd}})\",\"hint\":\"提示\",\"hint_plural\":\"提示\",\"hinttitle\":\"$t(button.hint)\",\"hintnext\":\"下一个提示\",\"hintprev\":\"上一个提示\",\"solution\":\"答案\",\"solutiontitle\":\"$t(button.solution)\",\"copyclipboard\":\"复制到剪切板\",\"startover\":\"重新开始\",\"startovertitle\":\"$t(button.startover)\",\"continue\":\"继续\",\"submitanswer\":\"提交答案\",\"submitanswertitle\":\"$t(button.submitanswer)\",\"previoustopic\":\"上一专题\",\"nexttopic\":\"下一专题\",\"questionsubmit\":\"$t(button.submitanswer)\",\"questiontryagain\":\"再试一次\"},\"text\":{\"startover\":\"重置\",\"areyousure\":\"你确定要重新开始吗? (所有当前进度将被重置)\",\"youmustcomplete\":\"你必须完成\",\"exercise\":\"练习\",\"exercise_plural\":\"练习\",\"inthissection\":\"在进行本节之前\",\"code\":\"代码\",\"enginecap\":\"$t(text.code) {{engine}}\",\"quiz\":\"测试\",\"blank\":\"空\",\"blank_plural\":\"空\",\"exercisecontainsblank\":\"本练习包含{{count}}个$t(text.blank)\",\"pleasereplaceblank\":\"请在{{blank}}内填写恰当的代码\",\"unparsable\":\"这似乎不是有效的R代码。 R不知道如何将您的文本转换为完整的命令。 您是否忘了填空,忘了删除下划线,忘了在参数之间包含逗号,或者是忘了用<code>&quot;<\\/code>, <code>'<\\/code>, <code>)<\\/code>,<code>}<\\/code>来封闭<code>&quot;<\\/code>, <code>'<\\/code>, <code>(<\\/code>。 or <code>{<\\/code>。\\n\",\"unparsablequotes\":\"<p>您的R代码中似乎含有特殊格式的引号,或者弯引号(<code>{{character}}<\\/code>) 在字符串前后,在R中字符串应该被直引号(<code>&quot;<\\/code> 或者 <code>'<\\/code>)包裹。<\\/p> {{code}} <p>别担心,该错误经常在复制粘贴包含格式的代码时遇到, 您可以尝试将该行中的代码替换为以下代码,也许还有其他地方需要修改。<\\/p> {{suggestion}}\\n\",\"unparsableunicode\":\"<p>您的代码中似乎包含有异常字符(<code>{{character}}<\\/code>),导致代码无效。<\\/p> {{code}} <p>有时候你的代码可能含有看似正常字符的特殊字符,特别是当你复制粘贴其他来源代码的时候。 请试着删除这些特殊字符,重新输入<\\/p>\\n\",\"unparsableunicodesuggestion\":\"<p>您的代码中似乎包含有异常字符(<code>{{character}}<\\/code>),导致代码无效。<\\/p> {{code}} <p>有时候你的代码可能含有看似正常字符的特殊字符,特别是当你复制粘贴其他来源代码的时候。 请试着删除这些特殊字符,重新输入<\\/p>\\n\",\"and\":\"且\",\"or\":\"或\",\"listcomma\":\",\",\"oxfordcomma\":\",\"}}},\"pl\":{\"translation\":{\"button\":{\"runcode\":\"Uruchom kod\",\"runcodetitle\":\"$t(button.runcode) ({{kbd}})\",\"hint\":\"Podpowiedź\",\"hint_plural\":\"Podpowiedzi\",\"hinttitle\":\"$t(button.hint)\",\"hintnext\":\"Następna podpowiedź\",\"hintprev\":\"Poprzednia podpowiedź\",\"solution\":\"Rozwiązanie\",\"solutiontitle\":\"$t(button.solution)\",\"copyclipboard\":\"Kopiuj do schowka\",\"startover\":\"Zacznij od początku\",\"startovertitle\":\"$t(button.startover)\",\"continue\":\"Kontynuuj\",\"submitanswer\":\"Wyślij\",\"submitanswertitle\":\"$t(button.submitanswer)\",\"previoustopic\":\"Poprzednia sekcja\",\"nexttopic\":\"Następna sekcja\",\"questionsubmit\":\"$t(button.submitanswer)\",\"questiontryagain\":\"Spróbuj ponownie\"},\"text\":{\"startover\":\"Zacznij od początku\",\"areyousure\":\"Czy na pewno chcesz zacząć od początku? (cały postęp w zadaniu zostanie utracony)\",\"youmustcomplete\":\"Musisz ukończyć\",\"exercise\":\"ćwiczenie\",\"exercise_plural\":\"ćwiczenia\",\"inthissection\":\"w tej sekcji przed kontynuowaniem\",\"code\":\"Kod\",\"enginecap\":\"$t(text.code) {{engine}}\",\"quiz\":\"Quiz\",\"blank\":\"luka\",\"blank_plural\":\"luk(i)\",\"exercisecontainsblank\":\"To ćwiczenie zawiera {{count}} $t(text.blank).\",\"pleasereplaceblank\":\"Proszę uzupełnić {{blank}} prawidłowym kodem.\",\"unparsable\":\"Wygląda na to, że może to nie być prawidłowy kod R. R nie jest w stanie przetworzyć Twojego tekstu na polecenie. Mogłeś(-aś) zapomnieć wypełnić luki, usunąć podkreślnik, umieścić przecinka między argumentami, lub zamknąć znak <code>&quot;<\\/code>, <code>'<\\/code>, <code>(<\\/code> lub <code>{<\\/code> odpowiadającym <code>&quot;<\\/code>, <code>'<\\/code>, <code>)<\\/code> lub <code>}<\\/code>.\\n\",\"unparsablequotes\":\"<p>Wygląda na to, że Twój kod zawiera szczególnie sformatowane cudzysłowy lub cudzysłowy typograficzne (<code>{{character}}<\\/code>) przy ciągach znaków, co sprawia, że kod jest niepoprawny. R wymaga cudzysłowów prostych (<code>&quot;<\\/code> albo <code>'<\\/code>).<\\/p> {{code}} <p>Nie martw się, to powszechne źródło błędów, gdy kopiuje się kod z innego programu, który sam formatuje teskt. Możesz spróbować zastąpić swój kod następującym kodem. Mogą być też inne miejsca, które wymagają poprawienia.<\\/p> {{suggestion}}\\n\",\"unparsableunicode\":\"<p>Wygląda na to, że Twój kod zawiera niespodziewany znak specjalny (<code>{{character}}<\\/code>), co sprawia, że kod jest niepoprawny.<\\/p> {{code}} <p>Czasami Twój kod może zawierać znak specjalny, który wygląda jak zwykły znak, zwłaszcza jeśli kopiujesz kod z innego programu. Spróbuj usunąć znak specjalny i wpisać do ponownie ręcznie.<\\/p>\\n\",\"unparsableunicodesuggestion\":\"<p>Wygląda na to, że Twój kod zawiera niespodziewany znak specjalny (<code>{{character}}<\\/code>), co sprawia, że kod jest niepoprawny.<\\/p> {{code}} <p>Czasami Twój kod może zawierać znak specjalny, który wygląda jak zwykły znak, zwłaszcza jeśli kopiujesz kod z innego programu. Możesz spróbować zastąpić swój kod następującym kodem. Mogą być też inne miejsca, które wymagają poprawienia.<\\/p> {{suggestion}}\\n\",\"and\":\"i\",\"or\":\"lub\",\"listcomma\":\", \",\"oxfordcomma\":\"\"}}}}}<\/script>"]},{"type":"NULL"},{"type":"character","attributes":{},"value":["learnr"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["0.11.5"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["tutorial-format"]},{"type":"character","attributes":{},"value":["0.11.5"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["rmarkdown/templates/tutorial/resources"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["tutorial-format.js"]},{"type":"character","attributes":{},"value":["tutorial-format.css","rstudio-theme.css"]},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["learnr"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["0.11.5"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["jquery"]},{"type":"character","attributes":{},"value":["3.6.0"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["lib/3.6.0"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["jquery-3.6.0.min.js"]},{"type":"NULL"},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["jquerylib"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["0.1.4"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["navigation"]},{"type":"character","attributes":{},"value":["1.1"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["rmd/h/navigation-1.1"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["tabsets.js"]},{"type":"NULL"},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["rmarkdown"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["2.25"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["highlightjs"]},{"type":"character","attributes":{},"value":["9.12.0"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["rmd/h/highlightjs"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["highlight.js"]},{"type":"character","attributes":{},"value":["default.css"]},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["rmarkdown"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["2.25"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["jquery"]},{"type":"character","attributes":{},"value":["3.6.0"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["lib/3.6.0"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["jquery-3.6.0.min.js"]},{"type":"NULL"},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["jquerylib"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["0.1.4"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["font-awesome"]},{"type":"character","attributes":{},"value":["6.4.2"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["fontawesome"]}]},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["css/all.min.css","css/v4-shims.min.css"]},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["fontawesome"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["0.5.2"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["bootbox"]},{"type":"character","attributes":{},"value":["5.5.2"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["lib/bootbox"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["bootbox.min.js"]},{"type":"NULL"},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["learnr"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["0.11.5"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["idb-keyvalue"]},{"type":"character","attributes":{},"value":["3.2.0"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["lib/idb-keyval"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["idb-keyval-iife-compat.min.js"]},{"type":"NULL"},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["learnr"]},{"type":"logical","attributes":{},"value":[false]},{"type":"character","attributes":{},"value":["0.11.5"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["tutorial"]},{"type":"character","attributes":{},"value":["0.11.5"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["lib/tutorial"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["tutorial.js"]},{"type":"character","attributes":{},"value":["tutorial.css"]},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["learnr"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["0.11.5"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["ace"]},{"type":"character","attributes":{},"value":["1.10.1"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["lib/ace"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["ace.js"]},{"type":"NULL"},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["learnr"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["0.11.5"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["clipboardjs"]},{"type":"character","attributes":{},"value":["2.0.10"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["lib/clipboardjs"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["clipboard.min.js"]},{"type":"NULL"},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["learnr"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["0.11.5"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["ace"]},{"type":"character","attributes":{},"value":["1.10.1"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["lib/ace"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["ace.js"]},{"type":"NULL"},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["learnr"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["0.11.5"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["clipboardjs"]},{"type":"character","attributes":{},"value":["2.0.10"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["lib/clipboardjs"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["clipboard.min.js"]},{"type":"NULL"},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["learnr"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["0.11.5"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["ace"]},{"type":"character","attributes":{},"value":["1.10.1"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["lib/ace"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["ace.js"]},{"type":"NULL"},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["learnr"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["0.11.5"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["clipboardjs"]},{"type":"character","attributes":{},"value":["2.0.10"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["lib/clipboardjs"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["clipboard.min.js"]},{"type":"NULL"},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["learnr"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["0.11.5"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["ace"]},{"type":"character","attributes":{},"value":["1.10.1"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["lib/ace"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["ace.js"]},{"type":"NULL"},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["learnr"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["0.11.5"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["clipboardjs"]},{"type":"character","attributes":{},"value":["2.0.10"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["lib/clipboardjs"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["clipboard.min.js"]},{"type":"NULL"},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["learnr"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["0.11.5"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["ace"]},{"type":"character","attributes":{},"value":["1.10.1"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["lib/ace"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["ace.js"]},{"type":"NULL"},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["learnr"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["0.11.5"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["clipboardjs"]},{"type":"character","attributes":{},"value":["2.0.10"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["lib/clipboardjs"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["clipboard.min.js"]},{"type":"NULL"},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["learnr"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["0.11.5"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["ace"]},{"type":"character","attributes":{},"value":["1.10.1"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["lib/ace"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["ace.js"]},{"type":"NULL"},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["learnr"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["0.11.5"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["clipboardjs"]},{"type":"character","attributes":{},"value":["2.0.10"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["lib/clipboardjs"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["clipboard.min.js"]},{"type":"NULL"},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["learnr"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["0.11.5"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["ace"]},{"type":"character","attributes":{},"value":["1.10.1"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["lib/ace"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["ace.js"]},{"type":"NULL"},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["learnr"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["0.11.5"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["clipboardjs"]},{"type":"character","attributes":{},"value":["2.0.10"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["lib/clipboardjs"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["clipboard.min.js"]},{"type":"NULL"},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["learnr"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["0.11.5"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["ace"]},{"type":"character","attributes":{},"value":["1.10.1"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["lib/ace"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["ace.js"]},{"type":"NULL"},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["learnr"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["0.11.5"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["clipboardjs"]},{"type":"character","attributes":{},"value":["2.0.10"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["lib/clipboardjs"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["clipboard.min.js"]},{"type":"NULL"},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["learnr"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["0.11.5"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["ace"]},{"type":"character","attributes":{},"value":["1.10.1"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["lib/ace"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["ace.js"]},{"type":"NULL"},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["learnr"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["0.11.5"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["clipboardjs"]},{"type":"character","attributes":{},"value":["2.0.10"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["lib/clipboardjs"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["clipboard.min.js"]},{"type":"NULL"},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["learnr"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["0.11.5"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["ace"]},{"type":"character","attributes":{},"value":["1.10.1"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["lib/ace"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["ace.js"]},{"type":"NULL"},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["learnr"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["0.11.5"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["clipboardjs"]},{"type":"character","attributes":{},"value":["2.0.10"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["lib/clipboardjs"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["clipboard.min.js"]},{"type":"NULL"},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["learnr"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["0.11.5"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["ace"]},{"type":"character","attributes":{},"value":["1.10.1"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["lib/ace"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["ace.js"]},{"type":"NULL"},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["learnr"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["0.11.5"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["clipboardjs"]},{"type":"character","attributes":{},"value":["2.0.10"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["lib/clipboardjs"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["clipboard.min.js"]},{"type":"NULL"},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["learnr"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["0.11.5"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["ace"]},{"type":"character","attributes":{},"value":["1.10.1"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["lib/ace"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["ace.js"]},{"type":"NULL"},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["learnr"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["0.11.5"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["clipboardjs"]},{"type":"character","attributes":{},"value":["2.0.10"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["lib/clipboardjs"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["clipboard.min.js"]},{"type":"NULL"},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["learnr"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["0.11.5"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["ace"]},{"type":"character","attributes":{},"value":["1.10.1"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["lib/ace"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["ace.js"]},{"type":"NULL"},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["learnr"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["0.11.5"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["clipboardjs"]},{"type":"character","attributes":{},"value":["2.0.10"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["lib/clipboardjs"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["clipboard.min.js"]},{"type":"NULL"},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["learnr"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["0.11.5"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["ace"]},{"type":"character","attributes":{},"value":["1.10.1"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["lib/ace"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["ace.js"]},{"type":"NULL"},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["learnr"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["0.11.5"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["clipboardjs"]},{"type":"character","attributes":{},"value":["2.0.10"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["lib/clipboardjs"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["clipboard.min.js"]},{"type":"NULL"},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["learnr"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["0.11.5"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["ace"]},{"type":"character","attributes":{},"value":["1.10.1"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["lib/ace"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["ace.js"]},{"type":"NULL"},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["learnr"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["0.11.5"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["clipboardjs"]},{"type":"character","attributes":{},"value":["2.0.10"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["lib/clipboardjs"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["clipboard.min.js"]},{"type":"NULL"},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["learnr"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["0.11.5"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["ace"]},{"type":"character","attributes":{},"value":["1.10.1"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["lib/ace"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["ace.js"]},{"type":"NULL"},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["learnr"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["0.11.5"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["clipboardjs"]},{"type":"character","attributes":{},"value":["2.0.10"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["lib/clipboardjs"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["clipboard.min.js"]},{"type":"NULL"},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["learnr"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["0.11.5"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["ace"]},{"type":"character","attributes":{},"value":["1.10.1"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["lib/ace"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["ace.js"]},{"type":"NULL"},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["learnr"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["0.11.5"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["clipboardjs"]},{"type":"character","attributes":{},"value":["2.0.10"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["lib/clipboardjs"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["clipboard.min.js"]},{"type":"NULL"},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["learnr"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["0.11.5"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["ace"]},{"type":"character","attributes":{},"value":["1.10.1"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["lib/ace"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["ace.js"]},{"type":"NULL"},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["learnr"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["0.11.5"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["clipboardjs"]},{"type":"character","attributes":{},"value":["2.0.10"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["lib/clipboardjs"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["clipboard.min.js"]},{"type":"NULL"},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["learnr"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["0.11.5"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["ace"]},{"type":"character","attributes":{},"value":["1.10.1"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["lib/ace"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["ace.js"]},{"type":"NULL"},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["learnr"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["0.11.5"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["clipboardjs"]},{"type":"character","attributes":{},"value":["2.0.10"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["lib/clipboardjs"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["clipboard.min.js"]},{"type":"NULL"},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["learnr"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["0.11.5"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["ace"]},{"type":"character","attributes":{},"value":["1.10.1"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["lib/ace"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["ace.js"]},{"type":"NULL"},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["learnr"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["0.11.5"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["clipboardjs"]},{"type":"character","attributes":{},"value":["2.0.10"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["lib/clipboardjs"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["clipboard.min.js"]},{"type":"NULL"},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["learnr"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["0.11.5"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["ace"]},{"type":"character","attributes":{},"value":["1.10.1"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["lib/ace"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["ace.js"]},{"type":"NULL"},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["learnr"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["0.11.5"]}]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","version","src","meta","script","stylesheet","head","attachment","package","all_files","pkgVersion"]},"class":{"type":"character","attributes":{},"value":["html_dependency"]}},"value":[{"type":"character","attributes":{},"value":["clipboardjs"]},{"type":"character","attributes":{},"value":["2.0.10"]},{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["file"]}},"value":[{"type":"character","attributes":{},"value":["lib/clipboardjs"]}]},{"type":"NULL"},{"type":"character","attributes":{},"value":["clipboard.min.js"]},{"type":"NULL"},{"type":"NULL"},{"type":"NULL"},{"type":"character","attributes":{},"value":["learnr"]},{"type":"logical","attributes":{},"value":[true]},{"type":"character","attributes":{},"value":["0.11.5"]}]}]}
    </script>
    <!--/html_preserve-->
    <!--html_preserve-->
    <script type="application/shiny-prerendered" data-context="execution_dependencies">
    {"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["packages"]}},"value":[{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["packages","version"]},"class":{"type":"character","attributes":{},"value":["data.frame"]},"row.names":{"type":"integer","attributes":{},"value":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65]}},"value":[{"type":"character","attributes":{},"value":["backports","base","bslib","cachem","cellranger","checkmate","cli","colorspace","commonmark","compiler","datasets","digest","dplyr","ellipsis","evaluate","fansi","farver","fastmap","fontawesome","generics","ggplot2","glue","graphics","grDevices","grid","gtable","highr","htmltools","htmlwidgets","httpuv","jquerylib","jsonlite","knitr","labeling","later","learnr","lifecycle","magrittr","markdown","methods","mime","munsell","pillar","pkgconfig","promises","R6","Rcpp","readxl","rlang","rmarkdown","rprojroot","sass","scales","shiny","stats","tibble","tidyselect","tools","utf8","utils","vctrs","withr","xfun","xtable","yaml"]},{"type":"character","attributes":{},"value":["1.4.1","4.3.2","0.6.1","1.0.8","1.1.0","2.3.1","3.6.1","2.1-0","1.9.0","4.3.2","4.3.2","0.6.33","1.1.4","0.3.2","0.23","1.0.5","2.1.1","1.1.1","0.5.2","0.1.3","3.4.4","1.6.2","4.3.2","4.3.2","4.3.2","0.3.4","0.10","0.5.7","1.6.4","1.6.13","0.1.4","1.8.7","1.45","0.4.3","1.3.2","0.11.5","1.0.4","2.0.3","1.12","4.3.2","0.12","0.5.0","1.9.0","2.0.3","1.2.1","2.5.1","1.0.11","1.4.3","1.1.2","2.25","2.0.4","0.4.8","1.2.1","1.8.0","4.3.2","3.2.1","1.2.0","4.3.2","1.2.4","4.3.2","0.6.4","2.5.2","0.41","1.8-4","2.3.8"]}]}]}
    </script>
    <!--/html_preserve-->
    </div>
    </div>
    
    </article> <!-- topics -->
    
    <div class="topicsContainer">
    <div class="topicsPositioner">
    <div class="band">
    <div class="bandContent topicsListContainer">
    
    <!-- begin doc-metadata -->
    <div id="doc-metadata">
    <h1 class="title toc-ignore" style="display:none;">Data Science
    Tutorial</h1>
    </div>
    <!-- end doc-metadata -->
    
    </div> <!-- bandContent.topicsListContainer -->
    </div> <!-- band -->
    </div> <!-- topicsPositioner -->
    </div> <!-- topicsContainer -->
    
    
    </main> <!-- bandContent page -->
    </div> <!-- pageContent band -->
    
    
    
    <!-- Build Tabsets -->
    <script>
    $(document).ready(function () {
      window.buildTabsets("section-TOC");
    });
    
    $(document).ready(function () {
      $('.tabset-dropdown > .nav-tabs > li').click(function () {
        $(this).parent().toggleClass('nav-tabs-open')
      });
    });
    </script>
    
    <script>
    // add bootstrap table styles to pandoc tables
    function bootstrapStylePandocTables() {
      $('tr.header').parent('thead').parent('table').addClass('table table-condensed');
    }
    $(document).ready(function () {
      bootstrapStylePandocTables();
    });
    </script>
    
    
    <!-- dynamically load mathjax for compatibility with self-contained -->
    <script>
      (function () {
        var script = document.createElement("script");
        script.type = "text/javascript";
        script.src  = "https://mathjax.rstudio.com/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML";
        document.getElementsByTagName("head")[0].appendChild(script);
      })();
    </script>
    
    
    </body>
    
    </html>