最近在用matlab做实验,需要计算符号网络中的平衡三元组和不平衡三元组的个数,之前用过R做实验,R里面有现成的符号网络包signnet,里面有一个方法counted_signed_triangles(没记错是这个),但是matlab里面找了很久都没有找到这样的方法,于是就自己写了一个函数
功能:统计符号网络中的三角形个数,不同类型的符号三元组个数
输入:邻接矩阵,节点总数
输出:三角形总数,+++,++-,+--,---
对应的三元组个数
function [triangles,ppp,ppn,pnn,nnn] = count_signed_triads(net,N)
triangles=0;
flag=zeros(N,N); % 判断是否已经检查过
ppp=0;
ppn=0;
pnn=0;<