При таком элементарном приложении у меня возникают проблемы при удалении меток / атрибутов столбцов data.table из импортированных данных (SAS)
Мой data.table DT - это импорт из файла SAS. Не все столбцы имеют метки, а некоторые имеют две метки. Я не могу поделиться своими данными, поскольку они импортированы (поэтому я не могу их реплицировать), но вот частичная структура DT:
> str(DT)
Classes ‘data.table’ and 'data.frame': 96293709 obs. of 150 variables:
$ Col1 : chr "Y" "N" "N" "N" ...
..- attr(*, "label")= chr "some label, description goes on and on"
$ Col2 : chr "N" "N" "N" "Y" ...
..- attr(*, "label")= chr "some label 2, description goes on and on"
$ Col3 : Date, format: "1994-08-07" "1994-08-07" "1994-08-07" "1994-08-07" ...
$ Col4 : chr "M" "M" "M" "M" ...
..- attr(*, "label")= chr "some label 3, description goes on and on"
..- attr(*, "format.sas")= chr "$"
$ Col5 : num 1e+07 1e+07 1e+07 1e+07 1e+07 ...
..- attr(*, "label")= chr "some label 4, description goes on and on"
$ Col6 : Date, format: "2000-01-01" "2005-03-10" "2013-06-01" "2015-06-01" ...
Я пытаюсь удалить все атрибуты, потому что, когда я использую определенные столбцы для создания новостных, эти атрибуты наследуются в новом столбце, что очень раздражает и нежелательно (мешает мне слиться с другой таблицей data.table без меток ). Я думал, что единственный способ предотвратить это - удалить атрибуты (метки) из исходных данных DT.
Я пытался
> setattr(DT, "label", NULL)
> setattr(DT, "format.sas", NULL)
и я не получаю ошибки. но ничего не происходит
после того, как я попробую вышеупомянутое и проверим структуру, я получу то же самое, что и раньше. ярлыки / атрибуты не были удалены.
что я тут не так делаю?
Я знаю, что должен как-то использовать setattr, так как не хочу, чтобы копировался DT (он довольно большой)