我有一个无向网络,其中每个节点可以是k类型之一。对于每个节点i,我需要计算节点i具有每种类型的邻居数量。 现在我用边列表来表示边,其中列是节点的索引。节点表示为矩阵,其中每列代表节点类型。如果一个节点的类型为k那么其他列的值为1,0。 这是我目前的代码,这是正确的,但太慢了。 # example nodes and edges, both typically much longer
nodes
看来我只是无法在Numpy中解决这个问题:我有一个矩阵,有任意数量的维度,以任意方式排序。在这个矩阵中,总有一个我感兴趣的维度(正如我所说的,这个维度的位置并不总是相同的)。现在,我想沿着这个维度找到第一个非零值。实际上,我需要该值的索引对值本身执行一些操作。 一个例子:如果我的矩阵a是n x m x p,我感兴趣的是尺寸为1号,我会做这样的事情: for ii in xrange(a.shape