SCEngine#

class astropy.table.SCEngine(data, row_index, unique=False)[source]#

Bases: object

Fast tree-based implementation for indexing, using the sortedcontainers package.

Parameters:
dataTable

Sorted columns of the original table

row_indexColumn object

Row numbers corresponding to data columns

uniquebool

Whether the values of the index must be unique. Defaults to False.

Methods Summary

add(key, value)

Add a key, value pair.

find(key)

Find rows corresponding to the given key.

items()

Return a list of key, data tuples.

range(lower, upper[, bounds])

Return row values in the given range.

remove(key[, data])

Remove data from the given key.

replace_rows(row_map)

Replace rows with the values in row_map.

shift_left(row)

Decrement rows larger than the given row.

shift_right(row)

Increment rows greater than or equal to the given row.

sort()

Make row order align with key order.

sorted_data()

Return a list of rows in order sorted by key.

Methods Documentation

add(key, value)[source]#

Add a key, value pair.

find(key)[source]#

Find rows corresponding to the given key.

items()[source]#

Return a list of key, data tuples.

range(lower, upper, bounds=(True, True))[source]#

Return row values in the given range.

remove(key, data=None)[source]#

Remove data from the given key.

replace_rows(row_map)[source]#

Replace rows with the values in row_map.

shift_left(row)[source]#

Decrement rows larger than the given row.

shift_right(row)[source]#

Increment rows greater than or equal to the given row.

sort()[source]#

Make row order align with key order.

sorted_data()[source]#

Return a list of rows in order sorted by key.