3 Fehler erkennen und lösen
3.1 Vorgehen bei Fehlern
Problemlösungsworkflow (je Schritt 15 Minuten)
Fragen Sie erst sich, was wohl die Fehlermeldung heissen könnte und was anders ist zu Vorlagen und Beispielen (und google bzw. auf Stack Overflow suchen),
dann Ihre AG-Kollegen,
bei Task-Force-Aufgaben Ihre Task-Force-Kolleg:innen (zB TF D auf MS-Teams)
dann Ihre Task-Force-E,
dann im Forum auf OLAT,
dann direkt an b.fretwurst@ikmz.uzh.ch oder auf Teams “Fretwurst”, “katharina” oder “Nadia”,
Stack Overflow mit “reprex” bzw. “mwe” (wenn Sie nicht wissen, was “reprex oder mwe sind, stellen Sie dort besser keine Fragen!”),
Fretwurst bei Paketautor:innen und externen Expert:innen.
3.2 Bei Fragen zu Fehlern mitzugeben
Wenn Sie Fehlermeldungen bekommen, senden Sie nicht einfach nur Screenshots! Damit kann niemand etwas anfangen und Sie wollen ja sicher auch die Lösungen nicht als Screenshot zurück haben 😃. Wenn Ihnen geholfen werden soll, müssen Sie die R-Zeilen (bzw. die R-Script-Datei) sowie den zugrundeliegenden Datensatz mitliefern und mitteilen, wo der Fehler auftritt.
Zu Ihren Fragen liefern Sie also bitte immer:
die Datendatei (als .RDS, .RData oder Excel-Datei),
Betroffener Befehl muss mitgeliefert werden als Text. Im Idealfall die .Rmd mit Zeilenhinweis (lokalisieren Sie den Fehler innerhalb einer Pipe).
Den Fehleroutput als Text und zusätzlich gerne als Screenshot.
Was schon probiert wurde.
Gezippter Ordner: Alles (1.-4.) zusammen – und mit der bei Ihnen vorliegenden Ordnerstruktur – können Sie uns schicken, indem Sie Ihren Projektordner komprimieren (z.B. als zip oder tar) und uns den per Teams oder Email schicken.
3.3 Typische Fehler erkennen und beheben
Die häufigsten Fehler und Lösungen sind:
Pakete sind nicht installiert: Tools ⇨ “Install Packages” Paket installieren
Pakete sind nicht geladen: Paket laden mit library(“tidyverse”) oder besser noch, die Paketnamen vor die Befehle schreiben (mit :: dazwischen): sjmisc::frq()
Datensätze können nicht gefunden werden: Den richtigen Pfad einstellen mit Unterordner zB DATEN_BF <- readRDS(“Daten/DATEN_BF.RDS”).
Datenobjekt wird nicht gefunden, weil es noch nicht geladen wurde: Daten laden zB DATEN_BF <- readRDS(“Daten/DATEN_BF.RDS”)
Datenobjekt wird nicht gefunden, weil es falsch geschrieben ist: Kontrollieren Sie auch Gross-Klein-Schreibung. Wenn Sie zB einen Objektnamen DATEN_BF markieren, dann highlighted R-Studio alle gleich geschreibenen Passagen. So sehen, Sie schnell, ob Sie sich irgendwo vertippt haben.
Variable wird nicht gefunden, weil sie falsch geschrieben ist: Schreiben Sie den Variablennamen neu und schauen Sie ob sie ihn in der Hilfsliste sehen.
Kommata oder Klammern fehlen oder sind zu viel: Es wird links in R ein roter Kreis mit weissem x angezeigt. Wenn Sie da drauf gehen, sagt Ihnen R-Studio in der Regel was fehlt oder zu viel ist.
Es werden mehrere Zeilen grün ausgeführt, aber es passiert nichts weiter: Schauen Sie ob am Ende ein Pipe-Operator (|>) zu viel ist.
Es kann “eine Funktion nicht gefunden” werden, weil ein Paket fehlt oder die Funktion ist falsch geschrieben ist: Googlen Sie die Funktion und schauen, aus welchem Paket die ist. Sie können dann probieren, ob es mit Paketname::Funktion geht zB janitor::percent.
Variablen sind vom falschen Typ: Wandeln Sie den Typ um. ZB:
DATEN_BF |> mutate(Nachricht = as.numeric(Nachricht))
.
Googlen Sie Ihre Fehlermeldungen oder Funktionen, die Fehler erzeugen und schauen sich den Syntax an, wie die Funktionen geschrieben sein sollten. Üben Sie sich in Frustrationstolleranz. Haben Sie Geduld und suchen Sie den Fehler im Detail.
Ein Kollege gibt hier ein paar Hinweise wie Fehler in R lesbar sind in einer PDF-Datei. Hier habe ich noch ein Video mit typischen Fehlern und Lösungen: