В R существует несколько методов выбора столбцов без пропущенных значений (NA). Вот несколько подходов:
- Использование функции
complete.cases(): эта функция возвращает логический вектор, указывающий, какие строки имеют полные варианты (без NA). Применяя его ко всему набору данных, вы можете подгруппировать столбцы, в которых все строки имеют непропущенные значения.
# Example dataframe
df <- data.frame(
col1 = c(1, 2, NA, 4),
col2 = c(NA, 2, 3, 4),
col3 = c(1, NA, 3, 4)
)
# Select columns without NAs
df_without_na <- df[, complete.cases(df)]
- Использование функции
na.omit(): эта функция удаляет строки с пропущенными значениями из набора данных. Затем вы можете выбрать оставшиеся столбцы.
# Example dataframe
df <- data.frame(
col1 = c(1, 2, NA, 4),
col2 = c(NA, 2, 3, 4),
col3 = c(1, NA, 3, 4)
)
# Remove rows with NAs and select columns
df_without_na <- na.omit(df)[, complete.cases(df)]
- Использование пакета
dplyr. Пакетdplyrпредоставляет удобный способ решения задач по манипулированию данными. Вы можете использовать функциюselect()в сочетании с функциейcomplete.cases()для фильтрации столбцов без NA.
# Example dataframe
df <- data.frame(
col1 = c(1, 2, NA, 4),
col2 = c(NA, 2, 3, 4),
col3 = c(1, NA, 3, 4)
)
# Load the dplyr package
library(dplyr)
# Select columns without NAs
df_without_na <- df %>% select_if(~all(complete.cases(.)))