Za każdym razem, gdy uruchomię polecenie fix(DT)
na data.table
, po zamknięciu okna poprawki, DT
zamienia się w obiekt data.frame
. Czy to normalne?Obiekty data.table zmieniają się w data.frame po wywołaniu 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:
kilka informacji sesja:
R version 3.0.0 (2013-04-03)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Myślę, że to normalne. 'fix' i' edit' to funkcje, które należy zastosować do ramek danych, a nie do tabel danych. Więc wezmą kopię DT, zmodyfikują ją, zwrócą ją jako ramkę danych i zastąpią oryginalnym DT. – juba
... i nie ma metody data.table dla 'edit'. Tak więc, ponieważ data.table jest także data.frame, używane jest 'edit.data.frame'. Nie ma sensu pracować na data.table przy użyciu 'fix' tak czy inaczej. Zwykle plik data.set będzie na to zbyt duży. – Roland
Jeśli nie martwisz się o wydajność, możesz napisać metodę 'edit.data.table', która zawijała' utils ::: edit.data.frame' ... –