temospena / Rnotebook

a compilation of R chunks
http://web.tecnico.ulisboa.pt/~rosamfelix/r/COMPILACAO.html
1 stars 0 forks source link

duplicated e anti_join #14

Open temospena opened 4 years ago

temospena commented 4 years ago

table(duplicated(OTHER$ID1)) # verifica se há repetidos

separa os repetidos dos que são únicos

cuidado com fazer apenas uma ordem! pq em 1123 > F,T,F,F e em fromLast=T > T,F,F,F

table(duplicated(HACKfamilias$ID1)) #4509 em 29121 (15,4%)
HACKfamilias$duplic <- duplicated(HACKfamilias$ID1)
HACKfamilias$duplic2 <- duplicated(HACKfamilias$ID1, fromLast = T)
HACKfamilias$duplic3 <- duplicated(HACKfamilias$ID2)
HACKfamilias$duplic4 <- duplicated(HACKfamilias$ID2, fromLast = T)
table(HACKfamilias$duplic==F & HACKfamilias$duplic2==F & HACKfamilias$duplic3==F & HACKfamilias$duplic4==F) #21655 limpinhos
CORRECTid <- HACKfamilias[HACKfamilias$duplic==F & HACKfamilias$duplic2==F & HACKfamilias$duplic3==F & HACKfamilias$duplic4==F,c(1,2,3)] #temos 21655 correctos, faltam 2963 ?
ERRADOS <- anti_join(HACKfamilias[,c(1,2,3)],CORRECTid) #são 7466 que têm de ser reduzidos a 2963 ?
temospena commented 4 years ago

e ainda arrange, e %in%

CORRECT <- arrange(rbind(CORRECT,CORRECTindivifixe),ID1) #ficamos com 23557, ainda faltam 1061
#4,3%
table(ERRADOS$ID1%in%CORRECT$ID1)
ERRADOS <- ERRADOS[!(ERRADOS$ID1%in%CORRECT$ID1),]
ERRADOS <- ERRADOS[!(ERRADOS$ID2%in%CORRECT$ID2),] #são 2495 que têm de ser reduzidos a 1061
ERRADOS <- arrange(ERRADOS, ID1)