numpy recarray.conj()函数| Python
在 numpy 中,数组可能具有包含字段的数据类型,类似于电子表格中的列。一个例子是[(a, int), (b, float)]
,其中数组中的每个条目都是一对 (int, float)。通常,使用诸如arr['a'] and arr['b']
类的字典查找来访问这些属性。记录数组允许使用arr.a and arr.b
作为数组成员访问字段。
numpy.recarray.conj()
函数通过共轭数组中的复数返回一个数组。
Syntax : numpy.recarray.conj(out=None)
Parameters:
out : [ndarray, optional] A location into which the result is stored.
-> If provided, it must have a shape that the inputs broadcast to.
-> If not provided or None, a freshly-allocated array is returned.
Return : Output array with same dimensions as Input array, placed with result.
代码#1:
# Python program explaining
# numpy.recarray.conj() method
# importing numpy as geek
import numpy as geek
# creating input array
in_arr = geek.array([[(5.0 + 2j, 2 + 1j), (3.0, -4 + 6j),
(6.0-5j, 9)], [(9.0, 1), (5.0 + 1j, 4-1j),
(-12.0 + 6j, -7 + 3j)]],
dtype =[('a', complex), ('b', complex)])
print ("Input array : ", in_arr)
# convert it to a record array, using arr.view(np.recarray)
rec_arr = in_arr.view(geek.recarray)
# 1st record array
print("1st Record array of complex : ", rec_arr.a)
# applying recarray.conj methods to 1st record array
out_arr = (rec_arr.a).conj()
print ("Output 1st conjugated array : ", out_arr)
# 2nd record array
rec_arr = rec_arr.b
print("2nd Record array of complex : ", rec_arr)
# applying recarray.conj methods to 2nd record array
out_arr = rec_arr.conj()
print ("Output 2nd conjugated array : ", out_arr)
输出:
Input array : [[( 5.+2.j, 2.+1.j) ( 3.+0.j, -4.+6.j) ( 6.-5.j, 9.+0.j)]
[( 9.+0.j, 1.+0.j) ( 5.+1.j, 4.-1.j) (-12.+6.j, -7.+3.j)]]
1st Record array of complex : [[ 5.+2.j 3.+0.j 6.-5.j]
[ 9.+0.j 5.+1.j -12.+6.j]]
Output 1st conjugated array : [[ 5.-2.j 3.-0.j 6.+5.j]
[ 9.-0.j 5.-1.j -12.-6.j]]
2nd Record array of complex : [[ 2.+1.j -4.+6.j 9.+0.j]
[ 1.+0.j 4.-1.j -7.+3.j]]
Output 2nd conjugated array : [[ 2.-1.j -4.-6.j 9.-0.j]
[ 1.-0.j 4.+1.j -7.-3.j]]