Вам действительно нужно предоставить дополнительную информацию, но есть несколько способов устранить проблему. Первый - это распечатать удаляемую строку:
data [1645,]
Это выброс? Вы не сказали нам, как вы определили выброс. Если строки были удалены из фрейма данных, имена строк не изменяются, но значения индекса изменяются, например,
set.seed(42)
x <- sample.int(25)
y <- sample.int(25)
data <- data.frame(x, y)
head(data)
# x y
# 1 17 2
# 2 5 8
# 3 1 3
# 4 10 1
# 5 4 10
# 6 18 11
data <- data[-c(5, 10, 15, 20, 25), ]
head(data)
# x y
# 1 17 2
# 2 5 8
# 3 1 3
# 4 10 1
# 6 18 11
# 7 25 15
data[6, ]
# x y
# 7 25 15
data["6", ]
# x y
# 6 18 11
Обратите внимание, что 6-я строка данных имеет имя строки «7», но строка с именем «6» является 5-й строкой во фрейме данных, потому что мы удалили 5-ю строку. Функция which
выдаст вам значение индекса, но если вы определили выброс, просмотрев распечатку, вы получили имя строки, которое может отличаться от индекса. Если мы хотим удалить значения x больше 24, вот один из способов сделать это:
data[data$x<25, ]