[R-br] sobre conjuntos

Jasmine Moreira jasmine.moreira.2013 em gmail.com
Sexta Agosto 31 15:37:18 -03 2018


Olá Antônio,

Veja se ajuda:


library(dplyr)

SP1 <- c("a","b","c","d","g","h","i")
SP2 <- c("a","b","c","d","e","f","j")
SP3 <- c("a","b","g","h","e","f","k")
SP1 <- as_tibble(SP1)
SP2 <- as_tibble(SP2)
SP3 <- as_tibble(SP3)

#Para SP1
setdiff(setdiff(SP1,SP2),SP3)

#Para SP2
setdiff(setdiff(SP2,SP1),SP3)


#Para SP3
setdiff(setdiff(SP3,SP1),SP2)


O resto vc pode fazer com inter_join()

inner_join(SP1,SP2)
inner_join(SP1,SP3)
inner_join(inner_join(SP1,SP2),SP3)


Abraços,
Jasmine


> Em 31 de ago de 2018, à(s) 15:01, Antonio Silva via R-br <r-br em listas.c3sl.ufpr.br> escreveu:
> 
> Car em s
> 
> Gostaria de saber se há alguma função no R, em algum pacote, que retorne as interseções e  valores únicos de diversos conjuntos ou grupos de subconjuntos. Por exemplo para:
> SP1 <- c("a","b","c","d","g","h","i")
> SP2 <- c("a","b","c","d","e","f","j")
> SP3 <- c("a","b","g","h","e","f","k")
> 
> teríamos a saída:
> SP1: i
> SP2: j
> SP3: k
> SP1-SP2: c,d
> SP1-SP3: g,h
> SP2-SP3: e,f
> SP1-SP2-SP3: a,b
> 
> Encontrei funções como intersect, setdiff e Reduce, Nem mesmo os valores exclusivos de cada conjunto eu consegui obter.
> 
> Agradeço qualquer indicação.
> 
> Obrigado,
> 
> -- 
> Antônio Olinto Ávila da Silva
> Instituto de Pesca
> São Paulo, Brasil
> _______________________________________________
> R-br mailing list
> R-br em listas.c3sl.ufpr.br
> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.



Mais detalhes sobre a lista de discussão R-br