Filtering Data - Advanced Conditions
In the previous chapter, we learned how to filter data using simple comparisons and logical operators. In this chapter, we’ll build on that by using the %in%
operator to match multiple values at once, and learn how to exclude specific rows from a dataset. These techniques are especially useful when dealing with categories that have many possible values.
Filtering with %in%
-
The
%in%
operator checks if elements of one vector are present in another; -
It is helpful when you want to match against multiple possible values;
-
This makes filtering cleaner and more readable than chaining multiple
==
or!=
conditions.
Example: select cars where fuel type is Diesel or Petrol using base R
selected_fuel_cars <- df[df$fuel %in% c("Diesel", "Petrol"), ]
head(selected_fuel_cars)
count(selected_fuel_cars)
Excluding specific values
Example: exclude cars where fuel is Diesel
Use !=
to filter out rows that match a certain value.
non_diesel_cars <- df[df$fuel != "Diesel", ]
head(non_diesel_cars)
Example: exclude cars where fuel is Diesel or Petrol
-
Use
%in%
along with the logicalNOT
operator!
for cleaner exclusion; -
This is easier to manage than writing multiple
!=
conditions.
non_diesel_petrol_cars <- df[!df$fuel %in% c("Diesel", "Petrol"), ]
head(non_diesel_petrol_cars)
count(non_diesel_petrol_cars)
You can also use the longer approach with &
and multiple !=
checks, but it becomes harder to manage when dealing with more than two values.
non_diesel_petrol_cars <- df[df$fuel != "Diesel" & df$fuel != "Petrol", ]
Tack för dina kommentarer!
Fråga AI
Fråga AI
Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal
Can you explain more about how the %in% operator works in R?
What are some common mistakes to avoid when using %in% for filtering?
Can you show how to use these filtering techniques with dplyr instead of base R?
Awesome!
Completion rate improved to 4
Filtering Data - Advanced Conditions
Svep för att visa menyn
In the previous chapter, we learned how to filter data using simple comparisons and logical operators. In this chapter, we’ll build on that by using the %in%
operator to match multiple values at once, and learn how to exclude specific rows from a dataset. These techniques are especially useful when dealing with categories that have many possible values.
Filtering with %in%
-
The
%in%
operator checks if elements of one vector are present in another; -
It is helpful when you want to match against multiple possible values;
-
This makes filtering cleaner and more readable than chaining multiple
==
or!=
conditions.
Example: select cars where fuel type is Diesel or Petrol using base R
selected_fuel_cars <- df[df$fuel %in% c("Diesel", "Petrol"), ]
head(selected_fuel_cars)
count(selected_fuel_cars)
Excluding specific values
Example: exclude cars where fuel is Diesel
Use !=
to filter out rows that match a certain value.
non_diesel_cars <- df[df$fuel != "Diesel", ]
head(non_diesel_cars)
Example: exclude cars where fuel is Diesel or Petrol
-
Use
%in%
along with the logicalNOT
operator!
for cleaner exclusion; -
This is easier to manage than writing multiple
!=
conditions.
non_diesel_petrol_cars <- df[!df$fuel %in% c("Diesel", "Petrol"), ]
head(non_diesel_petrol_cars)
count(non_diesel_petrol_cars)
You can also use the longer approach with &
and multiple !=
checks, but it becomes harder to manage when dealing with more than two values.
non_diesel_petrol_cars <- df[df$fuel != "Diesel" & df$fuel != "Petrol", ]
Tack för dina kommentarer!