Questions marquées «data.table»

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).

3
data.table vs dplyr: l'un peut-il faire quelque chose de bien l'autre ne peut pas ou fait mal?
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) …
760 r  data.table  dplyr 

8
Comment supprimer une colonne par nom dans data.table?
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 <- …
195 r  data.table 

2
Comprendre exactement quand une data.table est une référence à (par rapport à une copie) d'une autre data.table
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 …

3
Que signifie .SD dans data.table dans R
.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. …
173 r  data.table 



6
Comment supprimer une ligne par référence dans data.table?
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 …
150 r  data.table 



17
Remplacement des NA par la dernière valeur non NA
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 …
142 r  data.table  zoo  r-faq 

2
Pourquoi rbindlist est-il «meilleur» que rbind?
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?
135 r  data.table  rbind  rbindlist 


3
Trier les lignes de data.table par ordre décroissant sur la clé de chaîne `order (-x, v)` donne une erreur sur data.table 1.9.4 ou version antérieure
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 …
125 r  string  sorting  data.table  key 


2
Comment réorganiser les colonnes data.table (sans copier)
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[ , …
118 r  data.table 

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.