Le package R data.table est une extension de data.frame conçue pour une analyse rapide des données en mémoire. Utilisez la balise dt pour le package DataTables avec Shiny (DT).
Aperçu Je suis relativement familier data.table, pas tellement dplyr. J'ai lu quelques dplyrvignettes et exemples qui ont surgi sur SO, et jusqu'à présent, mes conclusions sont les suivantes: data.tableet dplyrsont comparables en vitesse, sauf lorsqu'il existe de nombreux groupes (c.-à-d.> 10-100K) et dans certaines autres circonstances (voir les repères ci-dessous) …
Pour se débarrasser d'une colonne nommée "foo" dans un data.frame, je peux faire: df <- df[-grep('foo', colnames(df))] Cependant, une fois dfconverti en data.tableobjet, il n'y a aucun moyen de supprimer simplement une colonne. Exemple: df <- data.frame(id = 1:100, foo = rnorm(100)) df2 <- df[-grep('foo', colnames(df))] # works df3 <- …
J'ai un peu de mal à comprendre les propriétés de passage par référence de data.table. Certaines opérations semblent «casser» la référence, et j'aimerais comprendre exactement ce qui se passe. Lors de la création d'un à data.tablepartir d'un autre data.table(via <-, puis de la mise à jour de la nouvelle table …
.SDsemble utile mais je ne sais pas vraiment ce que je fais avec. Qu'est ce que cela signifie? Pourquoi y a-t-il une période précédente (point). Que se passe-t-il lorsque je l'utilise? J'ai lu: .SDest un data.tablecontenant le sous-ensemble de xdonnées de pour chaque groupe, à l'exclusion des colonnes de groupe. …
Je suis récemment tombé sur la bibliothèque pandas pour python, qui, selon ce benchmark, effectue des fusions en mémoire très rapides. C'est encore plus rapide que le package data.table en R (ma langue de choix pour l'analyse). Pourquoi est-ce pandastellement plus rapide que data.table? Est-ce à cause d'un avantage inhérent …
A partir d' une trame de données, est - il un moyen facile d'agréger ( sum, mean, maxet c) de multiples variables simultanément? Voici quelques exemples de données: 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, …
Ma question porte sur l'attribution par référence par rapport à la copie data.table. Je veux savoir si on peut supprimer des lignes par référence, similaire à DT[ , someCol := NULL] Je veux savoir DT[someRow := NULL, ] Je suppose qu'il y a une bonne raison pour laquelle cette fonction …
J'ai une grande table data.table , avec de nombreuses valeurs manquantes dispersées dans ses ~ 200k lignes et 200 colonnes. Je voudrais recoder ces valeurs NA en zéros aussi efficacement que possible. Je vois deux options: 1: Convertir en data.frame et utiliser quelque chose comme ceci 2: Une sorte de …
Comment sélectionner plusieurs colonnes en utilisant un vecteur de leurs indices numériques (position) dans data.table? C'est ainsi que nous ferions avec un data.frame: df <- data.frame(a = 1, b = 2, c = 3) df[ , 2:3] # b c # 1 2 3
Dans un data.frame (ou data.table), je voudrais "remplir" les NA avec la valeur non NA précédente la plus proche. Un exemple simple, utilisant des vecteurs (au lieu de a data.frame) est le suivant: > y <- c(NA, 2, 2, NA, NA, 3, NA, 4, NA, NA) Je voudrais une fonction …
Je suis en train de parcourir la documentation data.tableet j'ai également remarqué certaines des conversations ici sur SO qui rbindlistest censé être meilleur que rbind. Je voudrais savoir pourquoi vaut rbindlistmieux rbindet dans quels scénarios rbindlistexcelle vraiment rbind? Y a-t-il un avantage en termes d'utilisation de la mémoire?
Quelle est la meilleure façon d'attribuer à plusieurs colonnes à l'aide de data.table? Par exemple: f <- function(x) {c("hi", "hello")} x <- data.table(id = 1:10) Je voudrais faire quelque chose comme ça (bien sûr, cette syntaxe est incorrecte): x[ , (col1, col2) := f(), by = "id"] Et pour étendre …
Disons que j'ai ce qui suit data.tabledans R: library(data.table) DT = data.table(x=rep(c("b","a","c"),each=3), y=c(1,3,6), v=1:9) Je veux le commander par deux colonnes (disons colonnes xet v). J'ai utilisé ceci: DT[order(x,v)] # sorts first by x then by v (both in ascending order) Mais maintenant, je veux le trier par x( par …
C'est un peu une question philosophique sur la syntaxe de jointure data.table. Je trouve de plus en plus d'utilisations pour les data.tables, mais j'apprends toujours ... Le format X[Y]de jointure pour data.tables est très concis, pratique et efficace, mais pour autant que je sache, il ne prend en charge que …
Je voudrais colonnes Réorganiser dans mon data.table x, étant donné un vecteur de caractères des noms de colonnes, neworder: library(data.table) x <- data.table(a = 1:3, b = 3:1, c = runif(3)) neworder <- c("c", "b", "a") Évidemment, je pourrais faire: x[ , neworder, with = FALSE] # or x[ , …
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.