J'ai un ensemble de données Je voudrais supprimer les lignes de données qui ont des informations en double dans 4 colonnes différentes.Supprimer des lignes dupliquées en fonction des conditions de plusieurs colonnes dans r
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 ressemble alors à:
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
Maintenant, je veux supprimer une ligne qui a des données en double sur la base des Y1-6columns. Ainsi, seules les lignes 4 et 1 seraient supprimées si elles étaient effectuées correctement, en supposant que toutes les variables Y étaient exactement les mêmes. C'est une condition de plusieurs colonnes. Je crois que je suis proche, mais il ne fonctionne tout simplement pas correctement.
J'ai essayé: new = foo[!(duplicated(foo[,1:6]))]
d'utiliser la commande dupliquée qu'elle chercherait et de trouver seulement celles qui correspondaient exactement?
Je pensais à l'aide d'une instruction conditionnelle avec &, mais ne peut pas comprendre comment faire non plus. Je pensais à ce que mais maintenant Im est débordé et perdu. Je me attends foo à ressembler à:
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
Mon préféré jusqu'à présent. –
Je m'excuse je sur simplifié mon exemple, parce que j'ai plus de colonnes d'information ... donc basé sur la variable 1-6 seulement sur 9 colonnes totales d'information. Je vais modifier l'exemple ci-dessus – Kerry
J'ai mis à jour ma réponse. Maintenant, la sélection des lignes est basée sur les colonnes y1 - y6. –