Je voulais obtenir toutes les combinaisons uniques par paires d'une colonne de chaîne unique d'une trame de données en utilisant le tidyverse
(idéalement).tidyr - façon unique d'obtenir des combinaisons (en utilisant tidyverse seulement)
Voici un exemple fictif:
library(tidyverse)
a <- letters[1:3] %>%
tibble::as_tibble()
a
#> # A tibble: 3 x 1
#> value
#> <chr>
#> 1 a
#> 2 b
#> 3 c
tidyr::crossing(a, a) %>%
magrittr::set_colnames(c("words1", "words2"))
#> # A tibble: 9 x 2
#> words1 words2
#> <chr> <chr>
#> 1 a a
#> 2 a b
#> 3 a c
#> 4 b a
#> 5 b b
#> 6 b c
#> 7 c a
#> 8 c b
#> 9 c c
est-il un moyen de supprimer les combinaisons en double « » ici. C'est que la sortie soit ce qui suit dans cet exemple:
# A tibble: 9 x 2
#> words1 words2
#> <chr> <chr>
#> 1 a b
#> 2 a c
#> 3 b c
J'espérais qu'il y aurait une belle purrr::map
ou filter
approche de tuyau en pour compléter ce qui précède.
EDIT: Il y a des questions similaires à celle-ci. ici, marqué par @Sotos. Ici, je suis spécifiquement à la recherche de moyens tidyverse (purrr
, dplyr
) pour compléter le pipeline que j'ai configuré. Les autres réponses utilisent divers autres paquets que je ne veux pas inclure en tant que dépendances.
@Sotos - J'ai déjà lu cette question. Je pose spécifiquement cette question pour utiliser les paquets tidyverse et en particulier les solutions purrr :: map. Veuillez supprimer le drapeau de duplication – user4687531