Как использовать na.omit в r (с примерами)
Вы можете использовать функцию na.omit() в R, чтобы удалить все неполные случаи в векторе, матрице или фрейме данных.
Эта функция использует следующий базовый синтаксис:
#omit NA values from vector x <- na. omitted (x) #omit rows with NA in any column of data frame df <- na. omitted (df) #omit rows with NA in specific column of data frame df <- df[ ! (is. na (df$column)), ]
Следующие примеры показывают, как использовать эту функцию на практике.
Пример 1: исключить значения NA из вектора
Следующий код показывает, как исключить все значения NA из вектора:
#definevector x <- c(1, 24, NA, 6, NA, 9) #omit NA values from vector x <- na. omitted (x) x [1] 1 24 6 9 attr(,"na.action") [1] 3 5 attr(,"class") [1] “omitted”
В первой строке вывода отображается вектор без значений NA, а в следующих двух строках отображается дополнительная информация о расположении значений NA.
Мы можем использовать следующий код, чтобы просто вернуть вектор без значений NA:
#definevector x <- c(1, 24, NA, 6, NA, 9) #omit NA values from vector x <- as. numeric (na. omit (x)) x [1] 1 24 6 9
Пример 2. Пропустить строки с NA в любом столбце фрейма данных.
Следующий код показывает, как опустить все строки со значениями NA в любом столбце фрейма данных:
#define data frame df <- data. frame (x=c(1, 24, NA, 6, NA, 9), y=c(NA, 3, 4, 8, NA, 12), z=c(NA, 7, 5, 15, 7, 14)) #view data frame df X Y Z 1 1 NA NA 2 24 3 7 3 NA 4 5 4 6 8 15 5 NA NA 7 6 9 12 14 #omit rows with NA value in any column data frame df <- na. omitted (df) #view data frame df X Y Z 2 24 3 7 4 6 8 15 6 9 12 14
Пример 3. Пропустить строки с NA в определенном столбце фрейма данных.
Чтобы опустить строки со значениями NA в определенном столбце фрейма данных, на самом деле проще использовать функцию is.na() следующим образом:
#define data frame df <- data. frame (x=c(1, 24, NA, 6, NA, 9), y=c(NA, 3, 4, 8, NA, 12), z=c(NA, 7, 5, 15, 7, 14)) #view data frame df X Y Z 1 1 NA NA 2 24 3 7 3 NA 4 5 4 6 8 15 5 NA NA 7 6 9 12 14 #remove rows with NA value in x column df <- df[ ! (is. na (df$x)), ] #view data frame df X Y Z 1 1 NA NA 2 24 3 7 4 6 8 15 6 9 12 14
Дополнительные ресурсы
Как использовать «Не NA» в R
Как использовать is.null в R
Как все вменить пропущенные значения в R
Как заменить NA строками в R