Я хотел бы подмножить таблицу данных на основе столбца, который я создал в аргументе j. Я предполагаю, что это невозможно, учитывая, что я получаю «Ошибка в eval (expr, envir, enc): объект« suma »не найден» (пример ниже), но, возможно, есть способ обойти его. Какие-либо предложения?data.table подмножество столбцом, определенным в J
спасибо,
test <- data.table(A = c('a','b','c'), B = rep(c(1,2,3),4), C = c('typ1','typ2'))
head(test)
A B C
1: a 1 typ1
2: b 2 typ2
3: c 3 typ1
4: a 1 typ2
5: b 2 typ1
6: c 3 typ2
test[ suma > 4 , .(suma = sum(B)) , by = .(A,C)]
Error in eval(expr, envir, enclos) : object 'suma' not found
Для дальнейшего использования, 'DT [I, J, по]' 'фильтры по i', а затем с помощью группы' by' перед тем вычисляя 'j', поэтому вы не можете сделать это по-своему. См. Страницу «Начало работы» на веб-сайте для некоторых учебных пособий http://r-datatable.com – Frank
Для справки, дубликат http://stackoverflow.com/questions/36292702/data-table-dti-j -by-do-not-select-groups-using-criteria-in-i (не может отмечать как обман, потому что он еще не ответил, в зависимости от FR https://github.com/Rdatatable/data.table/ проблемы/788). – Frank