2017-02-13 10 views
1

Я понимаю, как я могу изменить уровень столбца, когда я явно указать имя столбца, как в этом примере от Мэтта Dowle:уровней Изменения коэффициента в data.tables по имени

setattr(mydt$value,"levels",c(...)) 

Хотя в реальной жизни проблемы , вы часто не знаете имена столбцов. Этот метод не работает, если «значение» явно не указано в коде:

setattr(mydt[,get("value")],"levels",c(...)) 

И это проблема. Я предполагаю, что этот синтаксис дает мне столбец копии, а не ссылку на столбец, в отличие от mydt $ значения, но я не знаю, как это исправить: '(

Благодаря

Пожалуйста, см this older question

ответ

4

Это будет работать:.

setattr(mydt[["value"]],"levels",c(...)) 
+0

Великий Это именно то, что я искал. – VeilleData

 Смежные вопросы

  • Нет связанных вопросов^_^