class: center, middle, inverse, title-slide .title[ # Erste Schritte ] .subtitle[ ## Installation von Paketen ] .author[ ### Andreas Blaette ] .date[ ### 13. April 2023 ] --- # Badges und Credit Points - Übungsaufgaben zu Sitzungen - Auszeichnungen (Micro-Badges) - "Rechenkünstlerin" - "Statistikmeisterin" - "Textbefreierin" - "Gefühlsanalytikerin" - Takeaway-Badge - Projektarbeit und Credit Points --- # R und RStudio - R ist der Motor - RStudio ist eine IDE ([Integrated Development Environment](https://de.wikipedia.org/wiki/Integrierte_Entwicklungsumgebung)) - Viele nützliche features (z.B. code completion, Navigation in Befehlsgeschichte) - Tabellen erkunden mit `View()` - Immer wieder hilfreich: Anzeige von Hilfe ```r ?install.packages View(iris) ``` - Wichtig: Neue R-Version - neue Paketinstallationen! --- # Installation von Paketen - Installation von CRAN-Paketen ```r install.packages("beepr") ``` - Was sind eigentlich "dependencies"? - Unterschied von "source packages" und "binary packages" (vgl. [Wickham's Erklärung](https://r-pkgs.org/package-structure-state.html)) - Installation von Paketen von CRAN-artigen Repositorien ```r install.packages("drat") drat::addRepo("polmine") install.packages("gles") ``` - Installation von Paketen von GitHub ```r devtools::install_github("PolMine/polmineR") ``` --- # Quell- und Binärpakete - Der Quellcode von R-Paketen ist grundsätzlich offen, in vielen Fällen findet sich dieser in GitHub-Repositorien - R-Pakete können Quellcode enthalten, der erst durch Kompilierung in maschinenlesbaren Code überführt werden muss (insbesondere C, C++, FORTRAN). Weil auf macOS und Windows-Rechnern die dafür erforderlichen Kompiler nicht unbedingt verfügbar sind, werden für diese System von CRAN sogenannte "Binärpakete" zur Verfügung gestellt. Diese enden auf ".tgz" (macOS) bzw. ".zip" (Windows) - Die Erstellung von Binärpaketen nimmt nach der Veröffentlichung eines Pakets oft einige Tage in Anspruch. Dadurch können die Quellpakete zuweilen aktueller seien als Binärpakete. R/RStudio fragen dann nach, ob man die neuere Version eines Pakets nutzen möchte. Dann wird lokal kompiliert - insofern das möglich ist. Oder man installiert das ältere Binärpaket. Oft ist letzteres eine gute Entscheidung. --- # Zum Schluss: beepr - Installation des Pakets [beepr](https://cran.r-project.org/package=beepr) ```r install.packages("beepr") ``` - Laden des Paketes! ```r library(beepr) ``` - Und rumbeepen ```r beep(5) ``` - Alternativ ... ```r beepr::beep(6) ``` - Viel Freude mit beepr! --- # Wie zitiert man Pakete? Eine Empfehlung zum Zitieren von Paketen erhalten Sie mit der Funktion `citation()`. ```r citation(package = "polmineR") ``` ``` ## ## Blaette, Andreas (2023). polmineR: Verbs and Nouns for Corpus ## Analysis. R package version v0.8.8. ## ## A BibTeX entry for LaTeX users is ## ## @Manual{, ## title = {polmineR: Verbs and Nouns for Corpus Analysis}, ## author = {Andreas Blaette}, ## year = {2023}, ## note = {R package version 0.8.8}, ## } ``` --- # R und Zitation (continued) - Sie müssen nicht jegliches Paket installieren, mit dem Sie gearbeitet haben. Aber es ist gute Praxis, dass Sie jene zitieren, die für Ihre konkrete Analyse zentral sind und die für die Reproduktion von Forschungsergebnissen wichtig sind. - Wenn bei `citation()` die Angabe eines Pakets als Argument entfällt, wird eine Empfehlung zum Zitieren von R angezeigt. - Zuweilen erfordert die Reproduktion von Ergebnissen spezifische Kombinationen von Paketversionen. Der Aufruf von `sessionInfo()` zeigt die Versionen aller geladenen Pakete (und noch etwas mehr). Es ist gute Praxis, am Ende eines technischen Berichts diese Ausgabe aufzuführen. - Bei der Suche nach Hilfe via GitHub Issues oder in Foren (Stackoverflow) ist es oft nützlich, wenn Ihre Ratgeber die Paketversionen kennen. Falls es relevant sein kann, kopieren Sie im Zweifelsfall die Ausgabe von `sessionInfo()` in das Issue ein. --- # Wo finde ich den Einstieg in R-Pakete? Um die Logik und Funktionsweise eines Pakets verstehen zu lernen, gibt es die folgenden klassischen Orte, um Hilfe zu finden: - Im 'Reference manual', das es zu jedem Paket gibt, gibt es stets einen Eintrag, der das Paket als Ganzes erläutert. Diese Hilfeseite ruft man auf durch ?PAKETNAME auf (z.B. `?beepr`) - Der Code vieler R-Pakete lagert in GitHub-Repositorien. Eine README-Datei im Paket, die zugleich als Startseite der GitHub-Seite des Repos angezeigt wird, beschreit das Paket. An dieser Stelle finden sich auch oft wichtige Hilfestellungen zur Installation (vgl. z.B. https://github.com/PolMine/polmineR). - Etwas komplexere Pakete enthalten "Vignetten" (pdf- oder html-Dokumente), die in die wichtigsten Funktionen einführen. Vignetten sind auf der Überblicksseite eines Pakets bei CRAN aufgeführt. Zu installierten Paketen gibt Ihnen `browseVignettes()` einen Überblick über die verfügbaren Vignetten (z.B. `browseVignettes("dplyr")`) - Eine kompakte und in aller Regel sehr nützliche Hilfestellung mit ansprechendem Layout bieten "cheatsheets". Sehr hilfreich ist die von [RStudio gepflege Cheatsheets-Überblicksseite](https://www.rstudio.com/resources/cheatsheets/)! --- # Ausblick: Ein "Hallo Welt"-Programm - Anlegen einer Datei "foo.R" ```r print("Hallo Welt!") ``` - Ausführung über die Konsole ```r Rscript foo.R ```