Numpy recarray.swapaxes () function | python

Record arrays allow you to access fields as elements of an array using arr.a and arr.b numpy.recarray.swapaxes () returns an array representation with interchangeable axes 1 and 2.

Syntax: numpy.recarray.swapaxes (axis1, axis2)

Parameters:
axis1: [int] First axis.
axis2: [int] Second axis .

Return: [ndarray] Resultant array.

Code # 1:

# Python program explaining
# numpy.recarray.swapaxes () method

 
# import numy as a geek

import numpy as geek

 
# create an input array with two different fields

in_arr = geek.array ([[( 5.0 , 2 ), ( 3.0 , - 4 ), ( 6.0 , 9 )],

  [( 9.0 , 1 ), ( 5.0 , 4 ), ( - 12.0  , - 7 )]],

dtype = [( `a` , float ), ( `b` , int )])

  

print ( "Input array:" , in_arr)

 
# convert it into an array of entries,
# using arr.view (np.recarray)

rec_arr = i n_arr.view (geek.recarray)

print ( " Record array of float: " , rec_arr.a)

print ( "Record array of int:" , rec_arr.b)

 
# using recarray.swapaxes methods
# to place an array of posts using axis1 = 0 and axis2 = 1

out_arr = rec_arr.a.swapaxes ( 0 , 1 )

print ( " Output float array: " , out_arr) 

  
# applying recarray.swapaxes methods
# into an array of int records taking axis1 = 1 and axis2 = 0

out_arr = rec_arr.b.swapaxes ( 1 , 0 )

print ( " Output int array: " , out_arr) 

Output:

 Input array: [[(5., 2) (3., -4) (6., 9)] [(9. , 1) (5., 4) (-12., -7)]] Record array of float: [[5. 3. 6.] [9. 5. -12.]] Record array of int: [[ 2 -4 9] [1 4 -7]] Output float array: [[5. 9.] [3. 5.] [6. -12.]] Output int array: [[2 1] [-4 4 ] [9 -7]] 

Code # 2:

We are using numpy.recarray.swapaxes () to the entire array of records.

# Python program explaining
# numpy.recarray .swapaxes () method

 
# import numy as a geek

import numpy as geek

  
# create an input array with two different fields

in_arr = geek.array ([[( 5.0 , 2 ), ( 3.0 , 4 ), ( 6.0 , - 7 )],

[( 9.0 , 1 ), ( 6.0 , 4 ), ( - 2.0 , - 7 )]],

dtype = [( `a` , float ), ( `b` , int )])

  

print ( " Input array: " , in_arr)

  
# convert it to an array of posts,
# using arr.view (np.recarray)

rec_arr = in_arr.view (geek.recarray)

 
# applying recarray.swapaxes methods to
# an array of records taking axis1 = 0 and axis2 = 1

out_arr = rec_arr.swapaxes ( 1 , 0 )

 

print ( " Output record array: " , out_arr)

Output:

 Input array: [[(5., 2) (3., 4) (6., -7)] [(9., 1) (6., 4) (-2., -7)]] Output record array: [ [(5., 2) (9., 1)] [(3., 4) (6., 4)] [(6., -7) (-2., -7)]]