gpt4 book ai didi

python - 规范化二维数组

转载 作者:太空宇宙 更新时间:2023-11-04 08:35:49 35 4
gpt4 key购买 nike

考虑一个包含正数的方阵,以形状为 ((m,m)) 的二维 numpy 数组 A 给出。我想构建一个与条目具有相同形状的新数组 B

B[i,j] = A[i,j] / (np.sqrt(A[i,i]) * np.sqrt(A[j,j]))

一个明显的解决方案是遍历所有 (i,j),但我想知道是否有更快的方法。

最佳答案

利用 broadcasting 的两种方法可以建议。

方法 #1:

d = np.sqrt(np.diag(A))
B = A/d[:,None]
B /= d

方法 #2:

B = A/(d[:,None]*d) # d same as used in Approach #1

方法 #1 的内存开销较小,因此我认为会更快。

关于python - 规范化二维数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49193238/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com