給定一個 Numpy 陣列/矩陣,計算復數、純實數和純虛數的 pythonic 方法是什么:
[[ 1. 0.j 1. 0.j 1. 0.j 1. 0.j 1. 0.j ]
[ 1. 0.j 0.309 0.951j -0.809 0.588j -0.809-0.588j 0.309-0.951j]
[ 1. 0.j -0.809 0.588j 0.309-0.951j 0.309 0.951j -0.809-0.588j]
[ 1. 0.j -0.809-0.588j 0.309 0.951j 0.309-0.951j -0.809 0.588j]
[ 1. 0.j 0.309-0.951j -0.809-0.588j -0.809 0.588j 0.309 0.951j]]
注意:請忽略復數是虛數和實數的超集這一事實。
uj5u.com熱心網友回復:
復雜的
一個數是復數當且僅當它的虛部不為零且實部不為零。所以:
np.count_nonzero(
np.logical_and(
np.logical_not(
np.equal(x.imag, 0)
),
np.logical_not(
np.equal(x.real, 0)
)
)
)
純真的
使用numpy.isreal。
np.count_nonzero(np.isreal(x))
純虛數
一個數是純虛數當且僅當:
- 它的虛部不為零,并且
- 它的實部為零。
所以:
np.count_nonzero(
np.logical_and(
np.logical_not(
np.equal(x.imag, 0)
),
np.equal(x.real, 0)
)
)
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/533458.html
下一篇:加權重采樣一個numpy陣列
