Skip to contents

Filtering & Expressions in dataviewR

Filtering in dataviewR is done using a single powerful method:
writing a dplyr compatible expression in the filter box.

This gives you complete flexibility while keeping the logic clean and reproducible.


1. Launch dataviewR with a dataset

Once the app opens, you’ll see a Filter text box where you can type any valid expression similar to dplyr::filter().

2. Filtering with Expressions

You can write any filtering condition that you would normally pass to:

dplyr::filter(...)

Basic comparisons

Sepal.Length > 5

Multiple conditions

Sepal.Length > 5 & Species == "virginica"

Using %in%

Species %in% c("setosa", "virginica")

Finding missing values

is.na(Petal.Width)

String matching

grepl("^s", Species)

When you click Submit, the expression is evaluated and the dataset updates.

Invalid expressions show a friendly error notification.

3. Re-running, clearing, or updating filters

  • Submit → runs the filter
  • Clear → resets the filter box

The display updates immediately after submitting.

4. How filtering affects the generated R code

Whenever you apply a filter, the exported code reflects exactly what you typed:

iris |>
  filter(Species == "setosa" & Sepal.Length > 5) |>
  select(Sepal.Length, Sepal.Width, Species)

Filtering always appears before column selection in the generated R code.

5. Tips for Writing Expressions

  • Use & instead of &&
  • Use %in% for selecting multiple values
  • Variable names are case-sensitive
  • Treat the filter box like the dplyr::filter() function
  • If something fails, try running your expression directly in the R console first

The quick filter box (placed below the variable name) will helps to quickly search for a value in the variable. For character/factor variable(s) - it shows the distinct values of the variable(s) including the <NA> values. For numeric variable(s) - it shows an interactive draggable slider with minimum and maximum values of the variable(s). These do not reflect in the generated R code as filtering logic is solely depends on the Filter expression box.

The quick search box allows you to quickly check whether a value exists in the dataset. It searches only within variable values, not variable names/attributes.

Summary

In this article, you learned:
- dataviewR uses expression-based filtering system
- Expressions must be valid similar to dplyr::filter() function
- The filtered result updates on Submit
- Exported code reflects your filter exactly
- Quick filters help browsing but do not contribute to filtering logic

Expression filtering gives users full flexibility and keeps the workflow reproducible.

Next Article

Continue with: Exploring Multiple Datasets