Als «data.table» getaggte Fragen

Das R data.table-Paket ist eine Erweiterung von data.frame, die für eine schnelle speicherinterne Datenanalyse entwickelt wurde. Verwenden Sie das dt-Tag für das DataTables-Paket mit Shiny (DT).


8
Wie löscht man eine Spalte nach Namen in data.table?
Um eine Spalte mit dem Namen "foo" in a loszuwerden data.frame, kann ich Folgendes tun: df <- df[-grep('foo', colnames(df))] Sobald dfes jedoch in ein data.tableObjekt konvertiert wurde , gibt es keine Möglichkeit, nur eine Spalte zu entfernen. Beispiel: df <- data.frame(id = 1:100, foo = rnorm(100)) df2 <- df[-grep('foo', colnames(df))] …
194 r  data.table 

2
Genau verstehen, wann eine data.table auf eine andere data.table verweist (im Vergleich zu einer Kopie davon)
Ich habe ein kleines Problem damit, die Pass-by-Reference-Eigenschaften von zu verstehen data.table . Einige Operationen scheinen die Referenz zu "brechen", und ich möchte genau verstehen, was passiert. Beim Erstellen eines data.tablevon einem anderen data.table(via<- und anschließendes Aktualisieren der neuen Tabelle durch :=wird auch die ursprüngliche Tabelle geändert. Dies wird erwartet …

3
Wofür steht .SD in data.table in R.
.SDsieht nützlich aus, aber ich weiß nicht wirklich, was ich damit mache. Für was steht das? Warum gibt es eine vorhergehende Periode (Punkt). Was passiert, wenn ich es benutze? I gelesen: .SDein data.tabledie Teilmenge von enthaltende xs - Daten für jede Gruppe, mit Ausnahme der Spalte Gruppe (n). Es kann …
172 r  data.table 

4
Warum wurden Pandas 2012 in Python schneller zusammengeführt als data.table in R?
Ich bin kürzlich auf die Pandas- Bibliothek für Python gestoßen, die laut diesem Benchmark sehr schnelle In-Memory-Zusammenführungen durchführt. Es ist sogar schneller als das data.table- Paket in R (meine bevorzugte Sprache für die Analyse). Warum ist pandasso viel schneller als data.table? Liegt es an einem inhärenten Geschwindigkeitsvorteil, den Python gegenüber …
160 python  r  join  data.table  pandas 

8
Mehrere Variablen pro Gruppe aggregieren / zusammenfassen (z. B. Summe, Mittelwert)
Von einem Datenrahmen, gibt es eine einfache Möglichkeit , aggregieren ( sum, mean, maxet c) gleichzeitig mehrere Variablen? Nachfolgend einige Beispieldaten: library(lubridate) days = 365*2 date = seq(as.Date("2000-01-01"), length = days, by = "day") year = year(date) month = month(date) x1 = cumsum(rnorm(days, 0.05)) x2 = cumsum(rnorm(days, 0.05)) df1 = …

6
Wie lösche ich eine Zeile als Referenz in data.table?
Meine Frage bezieht sich auf die Zuweisung durch Referenz oder das Kopieren in data.table. Ich möchte wissen, ob man Zeilen durch Referenz löschen kann, ähnlich wie DT[ , someCol := NULL] Ich möchte es wissen DT[someRow := NULL, ] Ich denke, es gibt einen guten Grund, warum diese Funktion nicht …
150 r  data.table 



17
Ersetzen von NAs durch den neuesten Nicht-NA-Wert
In einem data.frame (oder einer data.table) möchte ich NAs mit dem nächsten vorherigen Nicht-NA-Wert "vorwärts füllen". Ein einfaches Beispiel für die Verwendung von Vektoren (anstelle von a data.frame) ist das folgende: > y <- c(NA, 2, 2, NA, NA, 3, NA, 4, NA, NA) Ich möchte eine Funktion fill.NAs(), mit …
141 r  data.table  zoo  r-faq 

2
Warum ist rbindlist "besser" als rbind?
Ich gehe die Dokumentation von data.tableund habe auch einige der Gespräche hier auf SO bemerkt rbindlist, die besser sein sollen als rbind. Ich würde gerne wissen, warum es rbindlistbesser ist als rbindund in welchen Szenarien sich das rbindlistwirklich auszeichnet rbind. Gibt es einen Vorteil in Bezug auf die Speichernutzung?
135 r  data.table  rbind  rbindlist 


3
Das Sortieren von Zeilen in data.table in absteigender Reihenfolge auf dem Zeichenfolgenschlüssel `order (-x, v)` führt zu einem Fehler in data.table 1.9.4 oder früher
Angenommen, ich habe Folgendes data.tablein R: library(data.table) DT = data.table(x=rep(c("b","a","c"),each=3), y=c(1,3,6), v=1:9) Ich möchte es nach zwei Spalten ordnen (sagen wir Spalten xund v). Ich habe das benutzt: DT[order(x,v)] # sorts first by x then by v (both in ascending order) Aber jetzt möchte ich es sortieren x(in absteigender Reihenfolge) …
125 r  string  sorting  data.table  key 

3
Warum erlaubt die X [Y] -Verbindung von data.tables keine vollständige äußere Verknüpfung oder eine linke Verknüpfung?
Dies ist eine philosophische Frage zur Join-Syntax von data.table. Ich finde immer mehr Verwendungsmöglichkeiten für data.tables, lerne aber immer noch ... Das Join-Format X[Y]für data.tables ist sehr präzise, ​​praktisch und effizient, aber soweit ich das beurteilen kann, unterstützt es nur innere Joins und rechte äußere Joins. Um eine linke oder …
122 r  join  data.table 

2
So ordnen Sie data.table-Spalten neu an (ohne zu kopieren)
Ich möchte Spalten in meinem Ordner data.table xmit einem Zeichenvektor aus Spaltennamen neu anordnen neworder: library(data.table) x <- data.table(a = 1:3, b = 3:1, c = runif(3)) neworder <- c("c", "b", "a") Natürlich könnte ich tun: x[ , neworder, with = FALSE] # or x[ , ..neworder] # c b …
118 r  data.table 

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.