удаление повторяющихся строк на основе условий из нескольких столбцов в r
У меня есть набор данных, который я хотел бы удалить строки данных, которые имеют дублирующуюся информацию в 4 различных столбцах.
foo<- data.frame(g1 = c("1","0","0","1","1"), v1 = c("7","5","4","4","3"), v2 = c("a","b","x","x","e"), y1 = c("y","c","f","f","w"), y2= c("y","y","y","f","c"), y3 = c("y","c","c","f","w"), y4= c("y","y","f","f","c"), y5=c("y","w","f","f","w"), y6=c("y","c","f","f","w"))
Foo тогда выглядит так:
g1 v1 v2 y1 y2 y3 y4 y5 y6
1 1 7 a y y y y y y
2 0 5 b c y c y w c
3 0 4 x f y c f f f
4 1 4 x f f f f f f
5 1 3 e w c w c w w
Теперь я хочу удалить любую строку, которая дублировала данные, основанные на Y1-6columns. Таким образом, только строки 4 и 1 будут удалены, если все сделано правильно, основываясь на том, что все переменные Y абсолютно одинаковы. Это условие множественного столбца.
Я думаю, что я близок, но это просто не работает правильно.
Я пробовал: new = foo[!(duplicated(foo[,1:6]))]
думая использовать дублированную команду, что она будет искать и находить только те, которые точно совпадают?
Я думал об использовании условного оператора с &, но не могу понять, как это сделать.new = foo[foo$y1==foo$y2|foo$y3|foo$y4|foo$y5|foo$y6]
g1 v1 v2 y1 y2 y3 y4 y5 y6
2 0 5 b c y c y w c
3 0 4 x f y c f f f
5 1 3 e w c w c w w