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"])
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"])
