ho un data.frame come questo -Rimuovere duplicato righe utilizzando dplyr
set.seed(123)
df = data.frame(x=sample(0:1,10,replace=T),y=sample(0:1,10,replace=T),z=1:10)
> df
x y z
1 0 1 1
2 1 0 2
3 0 1 3
4 1 1 4
5 1 0 5
6 0 1 6
7 1 0 7
8 1 0 8
9 1 0 9
10 0 1 10
Vorrei rimuovere le righe duplicate sulla base di prime due colonne. Uscita prevista -
df[!duplicated(df[,1:2]),]
x y z
1 0 1 1
2 1 0 2
4 1 1 4
Sono specificamente alla ricerca di una soluzione utilizzando il pacchetto dplyr
.
@dotcomken Fino ad allora potrebbe anche usare appena 'df%>% group_by (x, y)%>% fare (testa (, 1)) ' –
@MahbubulMajumder che funzionerà, ma è piuttosto lento. dplyr 0.3 avrà 'distinct()' – hadley
@hadley Mi piace la funzione unique() e distinct(), tuttavia, tutti rimuovono il secondo duplicato dal frame di dati. cosa succede se voglio rimuovere tutti i primi incontri del valore duplicato? Come si può fare? Grazie per qualsiasi aiuto! – FlyingDutch