-
Notifications
You must be signed in to change notification settings - Fork 0
/
ifelse_casewhen.Rmd
76 lines (49 loc) · 1.47 KB
/
ifelse_casewhen.Rmd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
# Monsters
```{r}
if_else(hat, "Baker", "Not a baker")
if_else(age < 3, "Baby", "Not a baby")
case_when(age < 3 ~ "Baby",
age < 6 ~ "Kid",
TRUE ~ "Adult")
case_when
```
```{r}
library(tidyverse)
days_on_ship <- 5
if_else(days_on_ship <= 7, "Short tripper")
# ERROR: What did we forget?
if_else(days_on_ship <= 7, "Short tripper", "Long tripper")
time_onboard = if_else(days_on_ship <= 7, "Short tripper", "Long tripper")
case_when(days_on_trip <= 7 ~ "Short tripper",
days_on_trip <= 14 ~ " Long tripper",
TRUE ~ "A very long tripper")
if_else(country %in% c("United States America", "Canada", "Mexico"),
"North America",
"Other")
if_else(goody_preference %in% c("Cake", "Cupcake", "Mexico"),
"Nuts",
"No nuts")
```
```{r}
# Most popular goody
count(df, favorite_goody)
# How many from each country
count(df, country)
df %>% count(country)
# How many canadiens?
summarize(df, canadiens = sum(country == "Canada"))
# Mean days on board ship?
summarize(df, days_avg = mean(days_on_ship))
# How many Long trippers
summarize(df, n_long_trippers = sum(time_onboard == "Long trip"))
# Total meals
df <- mutate(df, total_meals = meals_per_day * days_on_ship)
summarize(df, total_meals = sum(total_meals))
```
# group_by
```
# Crew count for each country
df %>% group_by(country) summarize(n_crew = n())
# Total meals per goody type
df %>% group_by(favorite_goody) %>% summarize(total_meals = sum(total_meals))
```