Ogni volta che faccio funzionare l'ordine fix(DT)
su un data.table
, dopo aver chiuso la finestra di correzione, DT
si trasforma in un oggetto data.frame
. È normale?oggetti Data.table trasformano in data.frame dopo aver chiamato fix()
library(data.table)
DT <- data.table(a = 1:2, b = 2:3)
> class(DT)
[1] "data.table" "data.frame"
fix(DT)
# close the window
> class(DT)
[1] "data.frame"
EDIT:
alcune informazioni di sessione:
R version 3.0.0 (2013-04-03)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Penso che sia normale. 'fix' e' edit' sono funzioni da applicare ai frame di dati, non alle tabelle di dati. Quindi prenderanno una copia di DT, la modificheranno, la restituiranno come un frame di dati e sostituiranno il DT originale con esso. – juba
... e non esiste un metodo data.table per 'edit'. Quindi, dal momento che data.table è anche un data.frame, viene utilizzato 'edit.data.frame'. Non ha senso lavorare su un data.table usando 'fix' comunque. Normalmente il data.set sarà troppo grande per quello. – Roland
se non sei preoccupato dell'efficienza potresti scrivere un metodo 'edit.data.table 'che ha incluso' utils ::: edit.data.frame' ... –