[R-br] sobre conjuntos

salah salah3.1416 em gmail.com
Sexta Agosto 31 16:52:00 -03 2018


segue sugestão


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")

A = setdiff(SP1, SP2)
B = setdiff(SP2, SP3)
C = setdiff(SP3, SP1)

setdiff(A, SP3)
setdiff(B, SP1)
setdiff(C, SP2)

intersect(SP1, B)
intersect(SP2, C)
intersect(SP3, A)

intersect(intersect(SP1, SP2), SP3)


Em 31/08/2018 16:49, Antonio Silva via R-br escreveu:
> Obrigado Jasmine, ajudou bastante.
>
> Meu desafio agora é obter o que é exclusivo para uma combinação de 
> dois conjuntos. Por exemplo:
>
> > inner_join(SP1,SP2)
> Joining, by = "value"
> # A tibble: 4 x 1
>   value
>   <chr>
> 1 a
> 2 b
> 3 c
> 4 d
>
> No entanto eu queria como resposta apenas o "c" e o "d" (exclusivos de 
> SP1 e SP2) pois o "a" e o "b" também está em SP3.
>
> Mais uma vez obrigado pela atenção.
>
> A.O.
>
> Em sex, 31 de ago de 2018 às 15:37, Jasmine Moreira 
> <jasmine.moreira.2013 em gmail.com 
> <mailto:jasmine.moreira.2013 em gmail.com>> escreveu:
>
>     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 <mailto: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 <mailto: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.
>
>
>
> _______________________________________________
> 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.

-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20180831/62586307/attachment.html>


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