是否有一種在NumPy中矢量化這些操作的通用方法?NumPy中的矢量化操作
In [2]: N = 8
In [3]: ll = np.arange(8)
In [4]: arr = np.zeros(ll.shape + (2, 2))
In [5]: ll.shape
Out[5]: (8,)
In [6]: arr.shape
Out[6]: (8, 2, 2)
In [7]: for ii in range(N):
...: arr[ii, :, :] = np.array(...) # 2 x 2 array function of ll[ii]
如果該函數是LL線性操作那麼這將是微不足道的,但有沒有辦法做到這一點在一般情況下?只是把一個例子:
In [8]: for ii in range(N):
...: arr[ii, :, :] = np.array([
...: [np.cos(ll[ii]) - 1, 0],
...: [np.sin(ll[ii]), np.cos(ll[ii]) ** 2]
...: ])
謝謝您的回答,我看到了正確的方法來轉那將是'arr.transpose(2,0,1)' 。如果有更清晰的方法,我會等待其他答案,否則我會接受。 – astrojuanlu