use*_*071 3 matlab algebra linear-algebra
我有以下5 x 5矩阵A:
1 0 0 0 0
1 1 1 0 0
1 0 1 0 1
0 0 1 1 1
0 0 0 0 1
Run Code Online (Sandbox Code Playgroud)
我试图在matlab中找到质心,所以我可以找到散射矩阵:
Scatter = A*Centroid*A'
Run Code Online (Sandbox Code Playgroud)
我的线性代数非常生疏,所以我希望手工操作,以帮助我弄清楚如何在matlab中编程.提前致谢.
我不确定如何获得质心.帮助和步骤将不胜感激.先感谢您.
如果您通过质心表示矩阵的"质心",则需要考虑矩阵中每个"1"的位置.我通过使用meshgrid函数完成了以下操作:
M =[ 1 0 0 0 0;
1 1 1 0 0;
1 0 1 0 1;
0 0 1 1 1;
0 0 0 0 1];
[rows cols] = size(M);
y = 1:rows;
x = 1:cols;
[X Y] = meshgrid(x,y);
cY = mean(Y(M==1))
cX = mean(X(M==1))
Run Code Online (Sandbox Code Playgroud)
产生cX = 3和cY = 3;
对于
M = [1 0 0;
0 0 0;
0 0 1];
Run Code Online (Sandbox Code Playgroud)
结果是cX = 2; cY = 2,如预期的那样.