计算矩阵中与单独矩阵中的值对应的元素的平均值

时间:2015-02-12 18:30:17

标签: matlab

我有一个333 x 333的邻接矩阵,它由我想根据每个单元的标识进行平均的值组成,它在一个单独的333x1向量中定义。在第二个向量中总共定义了13个不同的组,因此理想情况下,我能够计算出一个新的13 x 13矩阵,其中每个单元格包含来自较大矩阵的相应值的平均值。 / p>

matrix_1:333 x 333 - >包含每个成对交互的值

vector_2:333 x 1 - >包含matrix_1中每个元素的标识(范围:1 - 13)(元素在行和列中都相同)

理想输出= matrix_2:13 x 13 - >包含每个单元格中的值,反映特定身份比较的所有示例的平均分数。

e.g。 matrix_2(1,1) - >应包含来自matrix_1

的所有1到1值的平均得分

e.g。 matrix_2(1,2) - >应包含来自matrix_1

的所有1到2个值(以及2到1个值)的平均得分

提前致谢

的Mac

1 个答案:

答案 0 :(得分:2)

我不是100%肯定你的描述,但我想你想要:

[I,J] = ndgrid(V);
out = accumarray([I(:),J(:)], M(:), [], @mean);