让我们说我有一个大小为A
的numpy矩阵Nx2
。我正在做的是计算第一列和第二列的四象限反正切,如下所示:
import math
for i in xrange(A.shape[0]):
phase[i] = math.atan2(A[i,0], A[i,1])
然而,我想以矢量化的方式做到这一点。我怎样才能做到这一点? math.atan2()函数似乎不支持向量化。
谢谢!
答案 0 :(得分:6)
在我看来它应该只是:
user.Sid.Translate(typeof(System.Security.Principal.NTAccount)).ToString()
或者可能(如果import numpy as np
phase = np.arctan2(A[:, 0], A[:, 1])
的长度与phase
不同,原因有些奇怪):
A
换句话说,不要使用phase[:len(A)] = np.arctan2(A[:, 0], A[:, 1])
,请使用math.atan2
,因为numpy函数通常是其numpy.arctan2
对应项的矢量化版本。