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

Matlab 计算与单独矩阵中的值相对应的矩阵中元素的平均值,matlab,Matlab,我有一个333 x 333邻接矩阵,它由我想根据每个单元的恒等式平均的值组成,在一个单独的333x1向量中定义。在第二个向量中总共定义了13个不同的组,因此理想情况下,我可以计算一个新的13 x 13矩阵,其中每个单元格包含较大矩阵中相应值的平均值 矩阵_1:333 x 333-->包含每个成对交互的值 向量_2:333 x 1-->包含矩阵_1中每个元素的标识(范围:1-13)(行和列中的元素都相同) 理想输出=矩阵_2:13 x 13-->在每个单元格中包含反映所有特定身份比较示例平均分数的

我有一个333 x 333邻接矩阵,它由我想根据每个单元的恒等式平均的值组成,在一个单独的333x1向量中定义。在第二个向量中总共定义了13个不同的组,因此理想情况下,我可以计算一个新的13 x 13矩阵,其中每个单元格包含较大矩阵中相应值的平均值

矩阵_1:333 x 333-->包含每个成对交互的值

向量_2:333 x 1-->包含矩阵_1中每个元素的标识(范围:1-13)(行和列中的元素都相同)

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

e、 g.矩阵_2(1,1)-->应包含矩阵_1中所有1对1值的平均得分

e、 g.矩阵_2(1,2)-->应包含矩阵_1中所有1到2个值(以及2到1个值)的平均得分

提前谢谢


Mac

根据你的描述,我不是100%确定,但我想你想要:

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

这是一个上/下/对称矩阵?是的,这是一个对称矩阵你最近进入了
accumarray
:-)@LuisMendo:几周前我从你的一个答案中了解到,这种美可以通过细胞输出生成的子集,我终于迷上了她那双美丽的棕色眼睛,想和她一起生个小宝宝@knedlsepp哈哈哈。好啊但是不要打扰bsxfun,否则…:-D@rayryeng你是!(搜索
morph
)@knedlsepp-oh:)呵呵。在某种程度上,我偏向于
meshgrid
,因为我已经使用它很长时间了,直到我开始回答这里,我才意识到
ndgrid
的存在。你在这个网站上学到的东西是什么?是的,有时我无法得到一个MATLAB问题的答案,当真的很好的答案,如你提供的,或路易斯,或Divakar等,所以我冒险进入图像处理和OpenCV标签,以获得我的代表点:P顺便说一句,好答案在这里!忘记投票了。