您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

【PYthon报错】np.complex128数字的虚数部分为0j

5b51 2022/1/14 8:25:21 python 字数 4190 阅读 823 来源 www.jb51.cc/python

问题1: 我有一个类型为“np.complex128”的数组,但是复数部分等于0。怎样才能提取虚数的实数部分?

概述


问题1:

我有一个类型为“np.complex128”的数组,但是复数部分等于0。怎样才能提取虚数的实数部分?

此外,我想做scipy加法,但是不清楚如何进行np.complex128类型数据的的合并。

解决

如果是numpy数组,直接调用属性(虚部调用属性):

In [61]: a.real
Out[61]: array([ 1.,2.,-1.])

如果列表是python列表,则采用以下方法

<code class="language-python">In [64]: l
Out[64]: [(1+0j),(2+0j),(-1+0j)]
In [67]: [c.real for c in l]
Out[67]: [1.0,2.0,-1.0]

可能1:在求特征根的某一步出现了复数

<code class="language-python">>>> d = exp(c*1j)

d
array([ 0.54030231+0.84147098j,-0.84147098+0.54030231j,-0.54030231-0.84147098j])
d.dtype.name
'complex128' 许多非数组运算,如计算数组所有元素之和,被作为ndarray类的方法实现

d
array([ 0.54030231+0.84147098j,-0.84147098+0.54030231j,-0.54030231-0.84147098j])
d.dtype.name
'complex128' 许多非数组运算,如计算数组所有元素之和,被作为ndarray类的方法实现

d
array([ 0.54030231+0.84147098j,-0.84147098+0.54030231j,-0.54030231-0.84147098j])
d.dtype.name
'complex128' 许多非数组运算,如计算数组所有元素之和,被作为ndarray类的方法实现

可能2:数组类型定义为complex

<code class="language-python">>>> c = array( [ [1,2],[3,4] ],dtype=complex )
c
array([[ 1.+0.j,2.+0.j],[ 3.+0.j,4.+0.j]])
<code class="language-python">self.tdict = { float32: 1e-6,float64: 1e-14,complex64: 1e-6,complex128: 1e-14}

总结

以上是编程之家为你收集整理的【PYthon报错】np.complex128数字的虚数部分为0j全部内容,希望文章能够帮你解决【PYthon报错】np.complex128数字的虚数部分为0j所遇到的程序开发问题。


如果您也喜欢它,动动您的小指点个赞吧

除非注明,文章均由 laddyq.com 整理发布,欢迎转载。

转载请注明:
链接:http://laddyq.com
来源:laddyq.com
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。


联系我
置顶