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).
Überblick Ich bin relativ vertraut mit data.table, nicht so sehr mit dplyr. Ich habe einige dplyrVignetten und Beispiele gelesen , die auf SO aufgetaucht sind, und bisher sind meine Schlussfolgerungen folgende: data.tableund dplyrsind in der Geschwindigkeit vergleichbar, außer wenn es viele (dh> 10-100K) Gruppen gibt, und unter einigen anderen Umständen …
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))] …
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 …
.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 …
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 …
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 = …
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 …
Ich habe eine große Datentabelle mit vielen fehlenden Werten, die über die ~ 200.000 Zeilen und 200 Spalten verteilt sind. Ich möchte diese NA-Werte so effizient wie möglich auf Nullen umcodieren. Ich sehe zwei Möglichkeiten: 1: Konvertieren zu einem data.frame und Verwendung etwas wie diese 2: Irgendeine Art von kühlem …
Wie können wir mehrere Spalten unter Verwendung eines Vektors ihrer numerischen Indizes (Position) in auswählen data.table? So würden wir es machen mit data.frame: df <- data.frame(a = 1, b = 2, c = 3) df[ , 2:3] # b c # 1 2 3
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 …
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?
Was ist der beste Weg, um mehrere Spalten mit zuzuweisen data.table? Beispielsweise: f <- function(x) {c("hi", "hello")} x <- data.table(id = 1:10) Ich würde gerne so etwas machen (natürlich ist diese Syntax falsch): x[ , (col1, col2) := f(), by = "id"] Und um das zu erweitern, habe ich möglicherweise …
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) …
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 …
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 …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.