Table of Contents
The process of removing NAs (missing values) from a plot in ggplot2 involves using the na.omit() function to filter out any rows with NAs in the dataset, and then using the resulting clean dataset to create the plot. This ensures that the plot accurately represents the data without any missing values.
Remove NAs from Plot in ggplot2 (With Example)
You can use the following basic syntax to remove NA values from a plot in ggplot2:
library(ggplot2) ggplot(data=subset(df, !is.na(this_column)), aes(x=this_column)) + geom_bar()
This particular example creates a bar plot and removes any rows in the data frame where an NA value occurs in the column called this_column.
The following example shows how to use this syntax in practice.
Example: Remove NAs from Plot in ggplot2
Suppose we have the following data frame that contains information on the number of points scored by basketball players on various teams:
#create data frame df <- data.frame(team=c('A', 'A', NA, NA, 'B', 'B', 'B', 'B'), points=c(22, 29, 14, 8, 5, 12, 26, 36)) #view data frame df team points 1 A 22 2 A 29 3 <NA> 14 4 <NA> 8 5 B 5 6 B 12 7 B 26 8 B 36
Now suppose we attempt to create a bar plot in ggplot2 to visualize the number of occurrences of each team:
library(ggplot2) #create bar plot to visualize occurrences by team ggplot(df, aes(x=team)) + geom_bar()

Notice that the plot automatically creates a bar to display the occurrences of NA values in the team column.
To remove this bar from the plot, we can use the subset() function to subset the data frame to only include rows where the value in the team column is not NA:
library(ggplot2) #create bar plot to visualize occurrences by team and remove NA ggplot(data=subset(df, !is.na(team)), aes(x=team)) + geom_bar()

This bar plot still displays the number of occurrences for the values ‘A’ and ‘B’ in the team column but it no longer includes a bar to display the number of occurrences for NA values.
The following tutorials explain how to perform other common tasks in ggplot2:
Cite this article
stats writer (2024). How can I remove NAs from a plot in ggplot2?. PSYCHOLOGICAL SCALES. Retrieved from https://scales.arabpsychology.com/stats/how-can-i-remove-nas-from-a-plot-in-ggplot2/
stats writer. "How can I remove NAs from a plot in ggplot2?." PSYCHOLOGICAL SCALES, 26 Jun. 2024, https://scales.arabpsychology.com/stats/how-can-i-remove-nas-from-a-plot-in-ggplot2/.
stats writer. "How can I remove NAs from a plot in ggplot2?." PSYCHOLOGICAL SCALES, 2024. https://scales.arabpsychology.com/stats/how-can-i-remove-nas-from-a-plot-in-ggplot2/.
stats writer (2024) 'How can I remove NAs from a plot in ggplot2?', PSYCHOLOGICAL SCALES. Available at: https://scales.arabpsychology.com/stats/how-can-i-remove-nas-from-a-plot-in-ggplot2/.
[1] stats writer, "How can I remove NAs from a plot in ggplot2?," PSYCHOLOGICAL SCALES, vol. X, no. Y, ص Z-Z, June, 2024.
stats writer. How can I remove NAs from a plot in ggplot2?. PSYCHOLOGICAL SCALES. 2024;vol(issue):pages.
