Verzeichnisse prüfen, erstellen und löschen Um zu prüfen, ob ein Verzeichnis existiert, gibt es den Befehl. Um ein Verzeichnis anzulegen, benutzt man. Nur der Lösch-Befehl fällt etwas aus dem Rahmen und heißt unlink. Wichtig bei unlink ist, dass der Parameter recursive=TRUE gesetzt wird. Das hängt damit zusammen, dass unlink auch für Dateien verwendet werden kann. Auch ein leeres Verzeichnis kann nicht gelöscht werden, wenn recursive=FALSE. Der Rückgabewert, der zwar nicht wiedergegeben wird, aber per Variable abgefangen werden kann (siehe Skript), ist bei Erfolg 0, bei Fehler 1. Allerdings gilt das Fehlen des Verzeichnisses nicht als Fehler. Konnte das Verzeichnis hingegen nicht gelöscht werden, weil die Berechtigung fehlt oder es aktuell in Verwendung ist (z. B. wenn eine Datei aus dem Verzeichnis durch ein Programm geöffnet ist), dann gibt unlink 1 als Wert zurück. Spalte aus dataframe löschen r. # prüft, ob das Verzeichnis temp exisitert
dir. exists ( "temp")
# erstelle das Verzeichnis temp
dir. create ( "temp")
# jetzt, da wir es angelegt haben, gibt die Funktion TRUE zurück
# auch per kann man es sehen
list.
Doppelte Zeilen/Fälle In R Löschen (Duplikate Entfernen) - Björn Walther
Für die letzte sonnige Woche hätten wir also zum Beispiel einen Vektor mit sieben Elementen: tempVec <- c(24. 1, 28. 3, 26. 8, 23. 5, NA, 25. 6, NA). Wir sehen: Zwei Mal wurde der Wert nicht gespeichert. Da wir mittlerweile schon data frames kennen (wenn nicht, schau hier und hier), verschönern wir das Beispiel noch etwas und ordnen diese Temperaturen bestimmten Datumseinträgen zu. Den Datumsvektor erstellen wir wie folgt (heute noch etwas umständlicher per Hand): dateVec <- (c("2016-09-10", "2016-09-11", "2016-09-12", "2016-09-13", "2016-09-14", "2016-09-15", "2016-09-16")). R spalte löschen data frame. Und beide Vektoren in ein data frame: dfTemp <- (Datum=dateVec, Temperatur=tempVec). Jetzt haben wir einen Minidatensatz mit Temperaturen je Datum. Mit der -Funktion können wir jetzt jedes Element im Temperaturvektor überprüfen, ob es missing ist oder nicht: (dfTemp$Temperatur). Das ist schonmal ein guter Anfang, aber gerade für große Vektoren ist es lästig, jedes Element anzuzeigen. Stattdessen schauen wir uns einfach genau an, welche Elemente missing sind, und speichern die Positionen in missingCases: missingCases <- which((dfTemp$Temperatur)==TRUE).
Kopieren, Umbennen Und Löschen Von Dateien In R
Das ergibt Sinn, da wir (und R) ja nicht wissen, was missingValue überhaupt für einen Wert enthält. 1 + missingValue könnte also alles sein - wir wissen es aber nicht, und somit erhalten wir ein NA. Auf Missings überprüfen
In einer explorativen Analyse eines Datensatzes ist es immer ratsam, eine "missing value analysis" durchzuführen. So können wir zum Beispiel gezielt überprüfen, ob ein Vektor fehlende Werte enthält oder nicht. Entgegen der Intuition können wir dies allerdings nicht mit dem Vergleichsoperator == machen. Doppelte Zeilen/Fälle in R löschen (Duplikate entfernen) - Björn Walther. Denn tun wir dies, erhalten wir wieder selbst ein Missing: missingValue == NA. Stattdessen müssen wir die Funktion benutzen: (missingValue). Im Folgenden werde ich diese Funktion anhand eines simplen Beispiels veranschaulichen. Beispiel
Angenommen wir haben eine dieser kleinen Garten-Wetterstationen auf einer Terrasse stehen und speichern jede Nacht um 23:59 Uhr die Maximaltemperatur des vergangenen Tages. Allerdings gibt es ein Problem: die Station ist schon etwas älter und es gibt hin und wieder Übertragungsfehler, sodass kein Wert für den jeweiligen Tag gespeichert wird.
Der Link ist im letzten Abschnitt Zwei Datensätze miteinander verbinden. Was ist das R-Package dplyr? Dplyr wurde 2014 von Hadley Wickham entwickelt () und hat sich seitdem rasant verbreitet. Wie oben schon geschrieben erleichtert das Package die Aufbereitung von Datensätzen, indem es einfach zu nutzende Funktionen für die üblichen Aufgaben bereitstellt wie z. B. für die Auswahl von Spalten (select), nach gewissen Kriterien die Zeilen filtern (filter) oder Werte zu aggregieren (summarise). Der zu bearbeitende Datensatz muss als oder tibble (die im tidyverse) vorliegen, also einer Tabelle mit mehreren Spalten und vielen Zeilen. Im Prinzip sind viele diese Aufgaben vergleichbar mit dem SQL-Befehl select. Ist ja auch logisch, in SQL geht es schließlich auch um die Verarbeitung von Tabellen. Man könnte also für viele Befehle auch das Package sqldf nehmen, welches es erlaubt, SQL-Befehle auf loszulassen. Macht natürlich nur Sinn, wenn man sich ein wenig mit SQL auskennt. Kopieren, Umbennen und Löschen von Dateien in R. Ein ausführlicher Artikel ist in Planung, aktuell müsst ihr euch noch mit einem R-Bite, also nur einem Mini-Happen, zu SQL-Befehlen in R mit sqldf begnügen.