В базе R используйте duplicated
. Похоже, ваши данные уже отсортированы по дате, поэтому вы можете использовать
df[!duplicated(df[c("var1", "level")], fromLast = TRUE), ]
(по умолчанию duplicated
даст FALSE
для первого вхождения чего-либо и TRUE
для каждого другого вхождения. Установка fromLast = TRUE
приведет к изменению направления, поэтому вхождение last сохраняется)
Если вы не уверены, что ваши данные уже отсортированы, выполните сортировку первый!
df = df[order(df$var1, df$level, dfd$date), ]