In my example:
# Data set
nest <- c(2,2,2,2,2,2,3,3,3,3,3,3)
ClassType <- c("Class_0_1","Class_1_3","Class_3_9","Class_9_25","Class_25_50",
"Class_50","Class_0_1","Class_1_3","Class_3_9","Class_9_25","Class_25_50","Class_50")
avg <- c(19.0,19.0,19.0,19.0,19.0,19.0,0.776,0.776,0.776,12.4,22.3,36.0)
ds <- data.frame(nest,ClassType,avg)
str(ds)
# 'data.frame': 12 obs. of 3 variables:
# $ nest : num 2 2 2 2 2 2 3 3 3 3 ...
# $ ClassType: chr "Class_0_1" "Class_1_3" "Class_3_9" "Class_9_25" ...
# $ avg : num 19 19 19 19 19 19 0.776 0.776 0.776 12.4 ...
I'd like to remove rows with ClassType == "Class_50" if avg is equal in "Class_25_50" and "Class_50" by nest variable. My desirable output is:
# nest ClassType avg
# 1 2 Class_0_1 19.000
# 2 2 Class_1_3 19.000
# 3 2 Class_3_9 19.000
# 4 2 Class_9_25 19.000
# 5 2 Class_25_50 19.000
# 6 3 Class_0_1 0.776
# 7 3 Class_1_3 0.776
# 8 3 Class_3_9 0.776
# 9 3 Class_9_25 12.400
# 10 3 Class_25_50 22.300
# 11 3 Class_50 36.000
Please, any help with it?