Хорошо, значит, вы делаете пару вещей неправильно.Во-первых, rowMeans
не может оценить вектор символов, если вы хотите выбрать столбцы, используя его, вы должны использовать .SD
и передать вектор символов в .SDcols
.Во-вторых, вы пытаетесь вычислить агрегацию и группировку строк, что, я думаю, не имеет большого смысла.В-третьих, даже если ваше выражение не выдало ошибку, вы присваиваете его обратно Table
, что уничтожит ваши исходные данные (если вы хотите добавить новый столбец, используйте :=
, чтобы добавить его по ссылке).
То, что вы хотите сделать, - это вычислить средние значения строк выбранных вами столбцов, что вы можете сделать следующим образом:
Table[, AvgGM := rowMeans(.SD), .SDcols = sel_cols_GM]
Table[, AvgPM := rowMeans(.SD), .SDcols = sel_cols_PM]
Это означает создание этих новых столбцов в качестве средства строк моего подмножестваданные (.SD
), которые относятся к этим столбцам (.SDcols
)