theoph$Subject = factor(theoph$Subject)Module08_Gordon
Module 08
- Using
select()make a new data frame containing only the subject ID, the Time and conc variables
select(theoph, Subject, Time, conc) %>%
head() Subject Time conc
1 1 0.00 0.74
2 1 0.25 2.84
3 1 0.57 6.57
4 1 1.12 10.50
5 1 2.02 9.66
6 1 3.82 8.58
- Using a combination of
select()anddistinct()make a new data frame containing a single row for each subject with the subject ID, their weight and the dose
select(theoph, Subject, Wt, Dose) %>%
distinct(Subject, .keep_all = TRUE) Subject Wt Dose
1 1 79.6 4.02
2 2 72.4 4.40
3 3 70.5 4.53
4 4 72.7 4.40
5 5 54.6 5.86
6 6 80.0 4.00
7 7 64.6 4.95
8 8 70.5 4.53
9 9 86.4 3.10
10 10 58.2 5.50
11 11 65.0 4.92
12 12 60.5 5.30
- Using
filter()make a new data frame containing only the first subject
filter(theoph, Subject == 1) Subject Wt Dose Time conc
1 1 79.6 4.02 0.00 0.74
2 1 79.6 4.02 0.25 2.84
3 1 79.6 4.02 0.57 6.57
4 1 79.6 4.02 1.12 10.50
5 1 79.6 4.02 2.02 9.66
6 1 79.6 4.02 3.82 8.58
7 1 79.6 4.02 5.10 8.36
8 1 79.6 4.02 7.03 7.47
9 1 79.6 4.02 9.05 6.89
10 1 79.6 4.02 12.12 5.94
11 1 79.6 4.02 24.37 3.28
- Using
filter()make a new data frame containing only the first four subjects
filter(theoph, as.numeric(as.character(Subject)) < 5) Subject Wt Dose Time conc
1 1 79.6 4.02 0.00 0.74
2 1 79.6 4.02 0.25 2.84
3 1 79.6 4.02 0.57 6.57
4 1 79.6 4.02 1.12 10.50
5 1 79.6 4.02 2.02 9.66
6 1 79.6 4.02 3.82 8.58
7 1 79.6 4.02 5.10 8.36
8 1 79.6 4.02 7.03 7.47
9 1 79.6 4.02 9.05 6.89
10 1 79.6 4.02 12.12 5.94
11 1 79.6 4.02 24.37 3.28
12 2 72.4 4.40 0.00 0.00
13 2 72.4 4.40 0.27 1.72
14 2 72.4 4.40 0.52 7.91
15 2 72.4 4.40 1.00 8.31
16 2 72.4 4.40 1.92 8.33
17 2 72.4 4.40 3.50 6.85
18 2 72.4 4.40 5.02 6.08
19 2 72.4 4.40 7.03 5.40
20 2 72.4 4.40 9.00 4.55
21 2 72.4 4.40 12.00 3.01
22 2 72.4 4.40 24.30 0.90
23 3 70.5 4.53 0.00 0.00
24 3 70.5 4.53 0.27 4.40
25 3 70.5 4.53 0.58 6.90
26 3 70.5 4.53 1.02 8.20
27 3 70.5 4.53 2.02 7.80
28 3 70.5 4.53 3.62 7.50
29 3 70.5 4.53 5.08 6.20
30 3 70.5 4.53 7.07 5.30
31 3 70.5 4.53 9.00 4.90
32 3 70.5 4.53 12.15 3.70
33 3 70.5 4.53 24.17 1.05
34 4 72.7 4.40 0.00 0.00
35 4 72.7 4.40 0.35 1.89
36 4 72.7 4.40 0.60 4.60
37 4 72.7 4.40 1.07 8.60
38 4 72.7 4.40 2.13 8.38
39 4 72.7 4.40 3.50 7.54
40 4 72.7 4.40 5.02 6.88
41 4 72.7 4.40 7.02 5.78
42 4 72.7 4.40 9.02 5.33
43 4 72.7 4.40 11.98 4.19
44 4 72.7 4.40 24.65 1.15
- Using
group_by(), calculate the average concentration per subject (across all times)
theoph %>%
group_by(Subject) %>%
summarise(AveConc = mean(conc))# A tibble: 12 × 2
Subject AveConc
<fct> <dbl>
1 1 6.44
2 2 4.82
3 3 5.09
4 4 4.94
5 5 5.78
6 6 3.53
7 7 3.91
8 8 4.27
9 9 4.89
10 10 5.93
11 11 4.51
12 12 5.41
- Using
filter()make a new data frame containing only the first subject and pipe this toggplot()to make a line plot withTimeon the x-axis andconcon the y-axis
theoph %>%
filter(Subject == 1) %>%
ggplot(aes(x = Time, y = conc)) + geom_line()- Using
select()to extract just theSubject,Timeandconcvariables and pipe this toggplot()to make a line plot withTimeon the x-axis,concon the y-axis and the lines colored by subject
theoph %>%
select(Subject, Time, conc) %>%
ggplot(aes(x = Time, y = conc, color = Subject)) + geom_line()- Using
select()to extract just theSubject,Timeandconcvariables and pipe this to ggplot to make a line plot withTimeon the x-axis,concon the y-axis and faceted by the subject ID
theoph %>%
select(Subject, Time, conc) %>%
ggplot(aes(x = Time, y = conc)) + geom_line() + facet_wrap(~ Subject)