В файлах справки для dcast.data.table
есть заметка о том, что была реализована новая функция: "dcast.data.table позволяет столбцу value.var иметь список типов"
Я полагаю, это означает, что в списке можно иметь несколько переменных значений, то есть в этом формате:
dcast.data.table(dt, x1~x2, value.var=list('var1','var2','var3'))
Но мы получаем ошибку: 'value.var' must be a character vector of length 1.
Есть ли такая особенность, а если нет, то какие альтернативы могут быть однолинейными?
EDIT: в ответ на комментарии ниже
Существуют ситуации, когда у вас есть несколько переменных, которые вы хотите рассматривать как value.var
. Представьте себе, например, что x2 состоит из трех разных недель, и у вас есть 2 значения переменных, таких как потребление соли и сахара, и вы хотите использовать эти переменные в разные недели. Конечно, вы можете "расплавить" переменные значения 2 в один столбец, но зачем что-то использовать с помощью двух функций, когда вы можете сделать это с помощью одной функции, например reshape
?
(Примечание. Я также заметил, что reshape
не может обрабатывать несколько переменных как временную переменную, чем dcast
).
Итак, я хочу сказать, что я не понимаю, почему эти функции не позволяют гибко включать несколько переменных в value.var
или time.var
так же, как мы допускаем несколько переменных для id.var
.