You can use the following methods to filter a data frame in R where a specific column is between wo values:

**Method 1: Use Base R**

df_new <- subset(df, points %in% 100:120)

**Method 2: Use dplyr**

library(dplyr) df_new <- df %>% filter(between(points, 100, 120))

Both of these examples filter a data frame to only contain the rows where the value in the **points** column is between **100** and **120**.

The following examples show how to use each method in practice with the following data frame in R:

**#create data frame
df <- data.frame(team=c('Mavs', 'Pacers', 'Mavs', 'Celtics', 'Nets', 'Pacers'),
points=c(104, 110, 134, 125, 114, 124),
assists=c(22, 30, 35, 35, 20, 27))
#view data frame
df
team points assists
1 Mavs 104 22
2 Pacers 110 30
3 Mavs 134 35
4 Celtics 125 35
5 Nets 114 20
6 Pacers 124 27
**

**Example 1: Filter where Column is Between Two Values Using Base R**

We can use the following syntax with the **subset()** function from base R to filter the data frame to only contain rows where the value in the **points** column is between 100 and 120:

#filter for rows where value in points column is between 100 and 120 df_new <- subset(df, points %in% 100:120) #view updated data frame df_new team points assists 1 Mavs 104 22 2 Pacers 110 30 3 Nets 114 20

Notice that only the rows where the value in the **points** column is between 100 and 120 are kept.

All other rows with a value outside of this range are dropped.

**Example 2: Filter where Column is Between Two Values Using dplyr**

We can use the following syntax with the **filter()** and **between()** functions from the dplyr package in R to filter the data frame to only contain rows where the value in the **points** column is between 100 and 120:

library(dplyr) #filter for rows where value in points column is between 100 and 120 df_new <- df %>% filter(between(points, 100, 120)) #view updated data frame df_new team points assists 1 Mavs 104 22 2 Pacers 110 30 3 Nets 114 20

Notice that only the rows where the value in the **points** column is between 100 and 120 are kept.

Also notice that this method produces the same output as the base R method.

**Note**: You can find the complete documentation for the **filter **function in dplyr here.

**Additional Resources**

The following tutorials explain how to perform other common operations in R:

How to Use %in% to Filter for Rows with Value in List in R

How to Filter by Multiple Conditions Using dplyr

How to Filter Rows that Contain a Certain String Using dplyr