Имея матрицу размера n x 3, я хотел бы суммировать значения третьей строки по группам, определенным 1-м и 2-м столбцами.Как группируются суммы по нескольким столбцам?
Учитывая конкретный пример
A =[0.0050 0.0050 0.0050
0.0050 0.0050 0.0150
0.0050 0.0050 0.0250
0.0050 0.0050 0.0350
0.0050 0.0150 0.0050]
Я хотел бы подвести третий столбец таким образом, что я хотел бы получить матрицу
SuMa = [0,05 0,8 0,05; 0,05 0,15 0,005];
Я попытался создать группы, вызвав accumarray (A (:, [1 2]), A (:, 3)), но он возвращает ошибку: Первый вход SUBS должен содержать положительные целые индексы.
Тогда я попытался обойти сначала создать
ind = A(:, [1,2])*1000;
, а затем
accumarray(ind, A(:,3))
, но он вернулся матрицу 5 х 15, который не является результатом я хотел бы получить.
Кто-нибудь знает, как суммировать строки, сгруппированные по комбинации выбранных столбцов (эквивалентно SQL SELECT a, b, SUM (c) FROM A GROUP BY a, b)?
Спасибо!