我有一个维度为 4 的上三角子数组。它被初始化为
N, Q = (99, 23)
bivariate = np.zeros((N,N,Q,Q))
然后由类似的东西填充
for i in range(N):
for j in range(i+1,N):
bivariate[i,j] = num
我希望将上三角元素归一化(Q,Q)矩阵。我目前只是通过做一个来做到这一点
bivariate /= bivariate.sum(axis=3).sum(axis=2)[:,:,np.newaxis,np.newaxis]
但是由于下三角部分的空数组被规范化,我收到了运行时警告。除了以下方法之外,还有更好的方法吗?
for i in range(N):
for j in range(i+1,N):
bivariate[i,j] /= bivariate[i,j].sum()
谢谢。