# Table.filter
URL: https://lsd.tools/docs/api-table-filter
Updated: 2026-07-17

## Parameters

| name | type | default | description |
|---|---|---|---|
| `mask` | `Column` | — | a boolean `Column` expression, e.g. `t["score"] > 10` |

## Example

```python
t.filter(t["score"] > 10)          # → only the high scorers
```

Combine conditions with `&` (and), `|` (or), `~` (not):

```python
t.filter((t["score"] > 10) & t["name"].is_valid())
```

## Notes

`mask` must be a boolean `Column` built from the same table — comparisons (`> >= < <= == !=`),
`&` / `|` / `~`, and `is_valid()` / `is_null()` all produce one. Every call returns a **new**
`Table`; the original is untouched.

## See also

**API:** [select](/docs/api-table-select) · [sort](/docs/api-table-sort) · [Column](/docs/api-column)

**Guides:** [Tables & data flow](/docs/tools-tables)
