所以我有这个数据
F =
1
1
2
3
1
2
1
1
和zeros matric
NM =
0 0 0
0 0 0
0 0 0
我有规则,从每个变量的数组make连接的lis,连接应该是F数据
1&1, 1&2, 2&3, 3&1, 1&2, 2&1, 1&1
每个连接表示NM matric上的列和行值,如果有连接,则值必须为+1
所以从新的matric上面的连接应该是
NNM=
2 2 0
1 0 1
1 0 0
我试图像这样编码
[G H]=size(NM)
for i=1:G
j=2:G
if F(i)==A(j)
(NM(i,j))+1
else
NM(i,j)=0
end
end
NNM=NM
但NM matric没有变化? 我该怎么办?
答案 0 :(得分:2)
这就是你想要做的事情
F = [1 1 2 3 1 2 1 1];
NM = zeros(3, 3);
for i=1:(numel(F)-1)
NM(F(i), F(i+1))=NM(F(i), F(i+1))+1;
end
答案 1 :(得分:2)
答案 2 :(得分:0)
list = [1 1 ; 1 2 ; 2 3 ; 3 1 ; 1 2 ; 2 1 ; 1 1 ] ;
[nx,ny] = size(list) ;
NM = zeros(3) ;
for i = 1:nx
for j = 1:ny
NM(list(i,1),list(i,2)) = NM(list(i,1),list(i,2)) + 1/2 ;
end
end