library(tidyverse)purrr-map01
R
map
tidyverse
Exercise
Erstellen Sie einen Tibble mit folgenden Spalten:
- Buchstaben A-Z, so dass in der 1. Zeile “A” steht, in der 2. Zeile “B” etc.
- Buchstaben a-z, so dass in der 1. Zeile “a” steht, in der 2. Zeile “b” etc.
- Buchstabenkombination der ersten beiden Spalten, so dass in der 1. Zeile “A-a” steht, in der 2. Zeile “B-b” etc.
Solution
Geht es vielleicht so?
d <-
tibble(
letter1 = LETTERS,
letter2 = letters,
letters = paste(letter1, letter2, collapse = "-")
)
head(d)| letter1 | letter2 | letters |
|---|---|---|
| A | a | A a-B b-C c-D d-E e-F f-G g-H h-I i-J j-K k-L l-M m-N n-O o-P p-Q q-R r-S s-T t-U u-V v-W w-X x-Y y-Z z |
| B | b | A a-B b-C c-D d-E e-F f-G g-H h-I i-J j-K k-L l-M m-N n-O o-P p-Q q-R r-S s-T t-U u-V v-W w-X x-Y y-Z z |
| C | c | A a-B b-C c-D d-E e-F f-G g-H h-I i-J j-K k-L l-M m-N n-O o-P p-Q q-R r-S s-T t-U u-V v-W w-X x-Y y-Z z |
| D | d | A a-B b-C c-D d-E e-F f-G g-H h-I i-J j-K k-L l-M m-N n-O o-P p-Q q-R r-S s-T t-U u-V v-W w-X x-Y y-Z z |
| E | e | A a-B b-C c-D d-E e-F f-G g-H h-I i-J j-K k-L l-M m-N n-O o-P p-Q q-R r-S s-T t-U u-V v-W w-X x-Y y-Z z |
| F | f | A a-B b-C c-D d-E e-F f-G g-H h-I i-J j-K k-L l-M m-N n-O o-P p-Q q-R r-S s-T t-U u-V v-W w-X x-Y y-Z z |
Nein, leider nicht.
OK, neuer Versuch:
d <-
tibble(
letter1 = LETTERS,
letter2 = letters) %>%
unite("letters", c(letter1, letter2), remove = FALSE)
head(d)| letters | letter1 | letter2 |
|---|---|---|
| A_a | A | a |
| B_b | B | b |
| C_c | C | c |
| D_d | D | d |
| E_e | E | e |
| F_f | F | f |
Probieren wir es mit purrr::map():
d <-
tibble(
letter1 = LETTERS,
letter2 = letters,
letters = map2_chr(letter1, letter2, ~ paste(c(.x, .y), collapse ="-"))
)
head(d)| letter1 | letter2 | letters |
|---|---|---|
| A | a | A-a |
| B | b | B-b |
| C | c | C-c |
| D | d | D-d |
| E | e | E-e |
| F | f | F-f |
Infos zur Funktion paste() findet sich z.B. hier.
Categories:
- R
- map
- tidyverse