Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/29.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在MATLAB中组合值和指数矩阵_Matlab - Fatal编程技术网

在MATLAB中组合值和指数矩阵

在MATLAB中组合值和指数矩阵,matlab,Matlab,我有一个指数矩阵,比如指数=[1,3,1;2,4,2;1,3,1]。 我有一个值矩阵,比如值=[5,9,2;3,4,1;6,8,7]。 我想创建一个新的矩阵combined=[5+2+6+7,9+8;3+1,4],而不使用for循环。“组合”应包括矩阵“值”的元素,这些元素根据矩阵“指数”中各自的指数相加 你对如何在MATLAB中实现这一点有什么建议吗?提前谢谢你 您可以使用统计工具箱中的函数: val = [5,9,2 ; 3,4,1 ; 6,8,7]; idx = [1,3,1 ; 2

我有一个指数矩阵,比如指数=[1,3,1;2,4,2;1,3,1]。
我有一个值矩阵,比如值=[5,9,2;3,4,1;6,8,7]。
我想创建一个新的矩阵combined=[5+2+6+7,9+8;3+1,4],而不使用for循环。“组合”应包括矩阵“值”的元素,这些元素根据矩阵“指数”中各自的指数相加
你对如何在MATLAB中实现这一点有什么建议吗?提前谢谢你

您可以使用统计工具箱中的函数:

val = [5,9,2 ; 3,4,1 ; 6,8,7];
idx = [1,3,1 ; 2,4,2 ; 1,3,1];

result = grpstats(val(:),idx(:),'sum');
result = reshape(result, 2, 2);