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[ , ..neworder]
# c b a
# 1: 0.8476623 3 1
# 2: 0.4787768 2 2
# 3: 0.3570803 1 3
mais cela nécessiterait de copier à nouveau l'ensemble de données. Y a-t-il une autre façon de faire cela?
setcolorder
déplace les pointeurs de colonne sans utiliser aucune mémoire de travail. Cette phrase sur l'utilisation d'une mémoire de travail aussi grande qu'une colonne est à peu prèssetkey
vraiment.