SortedArray¶
-
class
astropy.table.
SortedArray
(data, row_index, unique=False)[source] [edit on github]¶ 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
cols
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. sorted_data
()Return rows in sorted order. Attributes Documentation
-
cols
¶
Methods Documentation
-
add
(key, row)[source] [edit on github]¶ Add a new entry to the sorted array.
Parameters: - key : tuple
Column values at the given row
- row : int
Row number
-
find
(key)[source] [edit on github]¶ 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] [edit on github]¶ 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] [edit on github]¶ Retrieve all array items as a list of pairs of the form [(key, [row 1, row 2, …]), …]
-
range
(lower, upper, bounds)[source] [edit on github]¶ 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] [edit on github]¶ 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] [edit on github]¶ 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] [edit on github]¶ Decrement all row numbers greater than the input row.
Parameters: - row : int
Input row number
-
shift_right
(row)[source] [edit on github]¶ Increment all row numbers greater than or equal to the input row.
Parameters: - row : int
Input row number
-
sort
()[source] [edit on github]¶ Make row order align with key order.
-
sorted_data
()[source] [edit on github]¶ Return rows in sorted order.