restrict_sort_to
restrict_sort_to
only allows sorting on specified table columns. This can be useful to prevent users from accidentally performing expensive sort operations as they interact with tables in the UI.
Syntax
restrict_sort_to(cols: Union[str, Sequence[str]]) -> Table
Parameters
Parameter | Type | Description |
---|---|---|
cols | Union[str, Sequence[str]] | The column(s) on which sorting is allowed. |
Returns
A new table that only allows sorting on the columns specified in the cols
argument.
Examples
from deephaven import new_table
from deephaven.column import string_col, int_col
source = new_table(
[
string_col("Ticker", ["AAPL", "AAPL", "IBM", "IBM", "GOOG", "GOOG"]),
string_col("Exchange", ["Nyse", "Arca", "Nyse", "Arca", "Nyse", "Arca"]),
int_col("Price", [75, 80, 110, 100, 25, 30]),
]
)
result = source.restrict_sort_to(cols=["Ticker", "Exchange"])
ticker_sorted = result.sort(order_by=["Ticker"])
exchange_sorted = result.sort(order_by=["Exchange"])
- result
- ticker_sorted
- exchange_sorted
The table can be sorted by the columns Ticker
or Exchange
with success:
An attempt to sort a column outside the arguments of restrict_sort_to
will result in an error:
price_sorted = result.sort(order_by=["Price"])