Чтобы найти свои выбросы с помощью IQR, вы можете применить свою функцию с помощью применения по столбцу, чтобы заменить выбросы на NA.С помощью которого () вы находите индексные положения «вектора данных» - то есть столбцов, которые вы сложили - и по модулю вы получаете номера строк, в которых был обнаружен NA.чтобы удалить уникальные значения, вам нужно только индексировать dataframe [-c (),] по строкам.
X <- apply(X, MARGIN = 2, FUN = remove_outliers)
na_rows <- unique(which(is.na(X)) %% dim(X)[1])
X <- X[-na_rows, ]