Thursday, October 2, 2025
HomeLanguagesNumpy recarray.compress() function | Python

Numpy recarray.compress() function | Python

In numpy, arrays may have a data-types containing fields, analogous to columns in a spreadsheet. An example is [(a, int), (b, float)], where each entry in the array is a pair of (int, float). Normally, these attributes are accessed using dictionary lookups such as arr['a'] and arr['b'].

Record arrays allow the fields to be accessed as members of the array, using arr.a and arr.b. numpy.recarray.compress() function return selected slices of an array along given axis.

Syntax : numpy.recarray.compress(condition, axis=None, out=None)

Parameters:
condition : [1-D array of bool] Array that selects which entries to return.
axis : [int, optional] Axis along which to take slices.
out : Results will be placed in this array.

Return : compressed_array, ndarray.

Code #1 :




# Python program explaining
# numpy.recarray.compress() method 
  
# importing numpy as geek
import numpy as geek
  
# creating input array with 2 different field 
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 to a record array, using arr.view(np.recarray)
rec_arr = in_arr.view(geek.recarray)
print("Record array of int: ", rec_arr.b)
  
# applying recarray.compress methods to float record array
float_rec_arr = rec_arr.a
print("Record array of float: ", float_rec_arr)
out_arr = (rec_arr.a).compress([0, 1], axis = 0)
print ("Output compressed array : ", out_arr) 
  
# applying recarray.compress methods to int record array
int_rec_arr = rec_arr.b 
print("Record array of int: ", int_rec_arr)
out_arr = int_rec_arr.compress([True, False], axis = 1)
print ("Output compressed array : ", out_arr) 


Output:

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

 
Code #2 :




# Python program explaining
# numpy.recarray.compress() method 
  
# importing numpy as geek
import numpy as geek
  
# creating input array with 2 different field 
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 to a record array, using arr.view(np.recarray)
rec_arr = in_arr.view(geek.recarray)
print("Record array of int: ", rec_arr.b)
  
# applying recarray.compress methods to whole record array
out_arr = rec_arr.compress([True, False], axis = 1)
print ("Output compressed array : ", out_arr) 


Output:

Input array :  [[(5.0, 2) (3.0, -4) (6.0, 9)]
 [(9.0, 1) (5.0, 4) (-12.0, -7)]]
Record array of int:  [[ 2 -4  9]
 [ 1  4 -7]]
Output compressed array :  [[(5.0, 2)]
 [(9.0, 1)]]
Dominic
Dominichttp://wardslaus.com
infosec,malicious & dos attacks generator, boot rom exploit philanthropist , wild hacker , game developer,
RELATED ARTICLES

Most Popular

Dominic
32331 POSTS0 COMMENTS
Milvus
85 POSTS0 COMMENTS
Nango Kala
6703 POSTS0 COMMENTS
Nicole Veronica
11867 POSTS0 COMMENTS
Nokonwaba Nkukhwana
11926 POSTS0 COMMENTS
Shaida Kate Naidoo
6818 POSTS0 COMMENTS
Ted Musemwa
7079 POSTS0 COMMENTS
Thapelo Manthata
6775 POSTS0 COMMENTS
Umr Jansen
6776 POSTS0 COMMENTS