1. Import your data
age <- read_csv("gifts_age.csv")
## Rows: 6 Columns: 9
## ── Column specification ────────────────────────────────────────────────────────
## Delimiter: ","
## chr (1): Age
## dbl (8): SpendingCelebrating, Candy, Flowers, Jewelry, GreetingCards, Evenin...
##
## ℹ Use `spec()` to retrieve the full column specification for this data.
## ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.
gender <- read_csv("gifts_gender.csv")
## Rows: 2 Columns: 9
## ── Column specification ────────────────────────────────────────────────────────
## Delimiter: ","
## chr (1): Gender
## dbl (8): SpendingCelebrating, Candy, Flowers, Jewelry, GreetingCards, Evenin...
##
## ℹ Use `spec()` to retrieve the full column specification for this data.
## ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.
2. Make data small
age_small <- age %>%
rename(group = Age) %>%
select(group, Candy, Flowers, Jewelry)
gender_small <- gender %>%
rename(group = Gender) %>%
select(group, Candy, Flowers, Jewelry)
3. inner_join
inner <- inner_join(age_small, gender_small, by = "group")
inner
## # A tibble: 0 × 7
## # ℹ 7 variables: group <chr>, Candy.x <dbl>, Flowers.x <dbl>, Jewelry.x <dbl>,
## # Candy.y <dbl>, Flowers.y <dbl>, Jewelry.y <dbl>
4. left_join
left <- left_join(age_small, gender_small, by = "group")
left
## # A tibble: 6 × 7
## group Candy.x Flowers.x Jewelry.x Candy.y Flowers.y Jewelry.y
## <chr> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 18-24 70 50 33 NA NA NA
## 2 25-34 62 44 34 NA NA NA
## 3 35-44 58 41 29 NA NA NA
## 4 45-54 60 37 20 NA NA NA
## 5 55-64 50 32 13 NA NA NA
## 6 65+ 42 25 8 NA NA NA
5. right_join
right <- right_join(age_small, gender_small, by = "group")
right
## # A tibble: 2 × 7
## group Candy.x Flowers.x Jewelry.x Candy.y Flowers.y Jewelry.y
## <chr> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 Men NA NA NA 52 56 30
## 2 Women NA NA NA 59 19 14
6. full_join
full <- full_join(age_small, gender_small, by = "group")
full
## # A tibble: 8 × 7
## group Candy.x Flowers.x Jewelry.x Candy.y Flowers.y Jewelry.y
## <chr> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 18-24 70 50 33 NA NA NA
## 2 25-34 62 44 34 NA NA NA
## 3 35-44 58 41 29 NA NA NA
## 4 45-54 60 37 20 NA NA NA
## 5 55-64 50 32 13 NA NA NA
## 6 65+ 42 25 8 NA NA NA
## 7 Men NA NA NA 52 56 30
## 8 Women NA NA NA 59 19 14
7. semi_join
semi <- semi_join(age_small, gender_small, by = "group")
semi
## # A tibble: 0 × 4
## # ℹ 4 variables: group <chr>, Candy <dbl>, Flowers <dbl>, Jewelry <dbl>
8. anti_join
anti <- anti_join(age_small, gender_small, by = "group")
anti
## # A tibble: 6 × 4
## group Candy Flowers Jewelry
## <chr> <dbl> <dbl> <dbl>
## 1 18-24 70 50 33
## 2 25-34 62 44 34
## 3 35-44 58 41 29
## 4 45-54 60 37 20
## 5 55-64 50 32 13
## 6 65+ 42 25 8