data.table
x
열 이름의 문자형 벡터가 주어지면 에서 열을 재정렬하고 싶습니다 neworder
.
library(data.table)
x <- data.table(a = 1:3, b = 3:1, c = runif(3))
neworder <- c("c", "b", "a")
분명히 할 수 있습니다.
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
그러나 전체 데이터 세트를 다시 복사해야합니다. 이를 수행하는 다른 방법이 있습니까?
setcolorder
작업 메모리를 전혀 사용하지 않고 열 포인터를 이동합니다. 하나의 열만큼 큰 작업 메모리를 사용하는 것에 대한 문장은setkey
실제로 거의 같습니다.