আমি আমার মধ্যে পুনর্বিন্যাস কলাম চাই 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সত্যই really