SortedArray¶
-
class
astropy.table.
SortedArray
(data, row_index, unique=False)[source]¶ Bases:
object
Implements a sorted array container using a list of numpy arrays.
- Parameters
data : Table
Sorted columns of the original table
row_index : Column object
Row numbers corresponding to data columns
unique : bool (defaults to False)
Whether the values of the index must be unique
Attributes Summary
Methods Summary
add
(key, row)Add a new entry to the sorted array.
find
(key)Find all rows matching the given key.
find_pos
(key, data[, exact])Return the index of the largest key in data greater than or equal to the given key, data pair.
items
()Retrieve all array items as a list of pairs of the form [(key, [row 1, row 2, …]), …]
range
(lower, upper, bounds)Find values in the given range.
remove
(key, data)Remove the given entry from the sorted array.
replace_rows
(row_map)Replace all rows with the values they map to in the given dictionary.
shift_left
(row)Decrement all row numbers greater than the input row.
shift_right
(row)Increment all row numbers greater than or equal to the input row.
sort
()Make row order align with key order.
Return rows in sorted order.
Attributes Documentation
-
cols
¶
Methods Documentation
-
add
(key, row)[source]¶ Add a new entry to the sorted array.
- Parameters
key : tuple
Column values at the given row
row : int
Row number
-
find
(key)[source]¶ Find all rows matching the given key.
- Parameters
key : tuple
Column values
- Returns
matching_rows : list
List of rows matching the input key
-
find_pos
(key, data, exact=False)[source]¶ Return the index of the largest key in data greater than or equal to the given key, data pair.
- Parameters
key : tuple
Column key
data : int
Row number
exact : bool
If True, return the index of the given key in data or -1 if the key is not present.
-
items
()[source]¶ Retrieve all array items as a list of pairs of the form [(key, [row 1, row 2, …]), …]
-
range
(lower, upper, bounds)[source]¶ Find values in the given range.
- Parameters
lower : tuple
Lower search bound
upper : tuple
Upper search bound
bounds : tuple (x, y) of bools
Indicates whether the search should be inclusive or exclusive with respect to the endpoints. The first argument x corresponds to an inclusive lower bound, and the second argument y to an inclusive upper bound.
-
remove
(key, data)[source]¶ Remove the given entry from the sorted array.
- Parameters
key : tuple
Column values
data : int
Row number
- Returns
successful : bool
Whether the entry was successfully removed
-
replace_rows
(row_map)[source]¶ Replace all rows with the values they map to in the given dictionary. Any rows not present as keys in the dictionary will have their entries deleted.
- Parameters
row_map : dict
Mapping of row numbers to new row numbers
-
shift_left
(row)[source]¶ Decrement all row numbers greater than the input row.
- Parameters
row : int
Input row number