There are many ways in which you can create a filter in Displayr. In some more complex scenarios creating a filter may require basic coding. This article describes how to use simple R code to create a filter based on a single-response question.
- A data set containing at least one single-response variable.
- Understanding of common R conditional operators:
Method - Create an R filter variable
- In the Anything menu select Data > Variables > New > Custom Code > R - Numeric. A new numeric variable called newvariable will appear in the Data Sets tree.
- Change the Label and Name of the variable in the object inspector via Properties > GENERAL, and enter the desired text (e.g., Filter_variable).
- In the same section, tick Usable as a filter.
Method - Create the R filter logic
- Under Properties > R CODE of your filter variable, enter the R code matching your binary filter condition. If the condition is met, the variable will return a value of 1 (which will be used to filter your data). If the condition is not met, the variable will return a 0 value.
- Note, instead of typing the variable name, you can select the variables you wish to include in your R code and drag them from the Data Sets tree into Properties > R CODE for your filter variable.
- With R you can reference either the variable name or the variable set name. In cases when a variable name contains spaces, the label needs to be wrapped using ` `. For example, if we have a variable called "Q1" with the label of "Q1. How old are you?", in R we can reference this as either Q1 or `Q1. How old are you?`.
Below are examples of using R code to create filters:
Q1 response equals 1:
Q1<5 | Q2==2
Q1 is greater than or equal to 25 AND less than or equal to 100:
Q1>=25 & Q1<=100
And here are the reverse of the above filter conditions using the ! operator.
Q1 response is not 1:
Q1 is NOT less than 5 AND Q2 is NOT 2:
!(Q1<5 | Q2==2)
Q1 is NOT greater than or equal to 25 AND NOT less than or equal to 100:
!(Q1>=25 & Q1<=100)