Friday, September 5, 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
32265 POSTS0 COMMENTS
Milvus
81 POSTS0 COMMENTS
Nango Kala
6634 POSTS0 COMMENTS
Nicole Veronica
11801 POSTS0 COMMENTS
Nokonwaba Nkukhwana
11863 POSTS0 COMMENTS
Shaida Kate Naidoo
6752 POSTS0 COMMENTS
Ted Musemwa
7025 POSTS0 COMMENTS
Thapelo Manthata
6701 POSTS0 COMMENTS
Umr Jansen
6718 POSTS0 COMMENTS