Skip to content

Commit 316deb1

Browse files
committed
Course material
1 parent 10c70b1 commit 316deb1

19 files changed

+1849
-93
lines changed

R/utils.R

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
# Functions for creating links to local files
2+
# Only used in vignettes!
3+
formatLink = function(txt, fil = txt, bold = NA, live = TRUE, folder = NULL) {
4+
if(is.na(bold))
5+
bold = grepl("lect", fil, ignore.case = TRUE)
6+
7+
if(bold)
8+
txt = sprintf("**%s**", txt)
9+
10+
if(!live)
11+
return(txt)
12+
13+
if(!is.null(folder))
14+
fil = file.path(folder, fil)
15+
16+
if(!isTRUE(file.exists(fil))) {
17+
cat("File does not exist locally:", fil, "\n")
18+
return(txt)
19+
}
20+
21+
# Formatted link
22+
url = "https://raw.githubusercontent.com/magnusdv/pedsuite/master/vignettes/web_only"
23+
sprintf('[%s](%s/%s){target="_blank"}', txt, url, fil)
24+
}
25+
26+
# Factory
27+
linkFUN = function(folder) {
28+
function(txt, fil = txt, bold = NA, live = TRUE) {
29+
formatLink(txt, fil, bold, live, folder = folder)
30+
}
31+
}

vignettes/web_only/course-ghep2024.Rmd

Lines changed: 20 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -42,64 +42,44 @@ install.packages("pedsuite")
4242
## Software preparation: Familias
4343
Part of the course is based on kinship testing in the Familias software, which can be installed here: https://familias.no/download.
4444

45-
```{r, echo = F}
46-
courseFolder = "courses/ghep2024"
47-
48-
# Function for creating links to files
49-
link = function(tit, file = NULL, bold = F, live = T) {
50-
if(bold)
51-
tit = sprintf("**%s**", tit)
52-
53-
if(!live)
54-
return(tit)
55-
56-
locpth = file.path(courseFolder, file)
57-
58-
if(!isTRUE(file.exists(locpth))) {
59-
cat("File does not exist locally:", locpth, "\n")
60-
return(tit)
61-
}
62-
63-
# Formatted link
64-
url = "https://raw.githubusercontent.com/magnusdv/pedsuite/master/vignettes/web_only"
65-
sprintf('[%s](%s/%s)', tit, url, locpth)
66-
}
67-
```
68-
```
6945

7046
## Schedule
7147
The course runs each Monday of October 2024, from 16 to 20 (CEST). The following schedule is tentative:
7248

49+
```{r, echo = F}
50+
link = pedsuite:::linkFUN(folder = "courses/ghep2024")
51+
```
52+
7353
#### Oct 7: Theory of relatedness
74-
* 16:00--17:00 `r link("Introduction to pedigrees, QuickPed and R", "ghep2024_lecture1_pedigrees.pdf", bold = T)` (MDV)
75-
* 17:00--17:45 `r link("Exercises", "exercises1.pdf")`. (`r link("Solutions", "solutions1.pdf")`)
54+
* 16:00--17:00 `r link("Introduction to pedigrees, QuickPed and R", "ghep2024_lecture1_pedigrees.pdf")` (MDV)
55+
* 17:00--17:45 `r link("Exercises I", "exercises1.pdf")`. (`r link("Solutions", "solutions1.pdf")`)
7656
* 17:45--18:00 _Break_
77-
* 18:00--19:00 `r link("Measures of relatedness", "ghep2024_lecture2_coefficients.pdf", bold = T)` (MDV)
78-
* 19:00--19:45 `r link("Exercises", "exercises2.pdf")`. (`r link("Solutions", "solutions2.pdf")`)
57+
* 18:00--19:00 `r link("Measures of relatedness", "ghep2024_lecture2_coefficients.pdf")` (MDV)
58+
* 19:00--19:45 `r link("Exercises II", "exercises2.pdf")`. (`r link("Solutions", "solutions2.pdf")`)
7959
* 19:45--20:00 Wrap-up
8060

8161
#### Oct 14: Kinship testing
82-
* 16:00--17:00 `r link("Introduction to forensic kinship testing", "ghep2024_lecture3_testing.pdf", bold = T)` (TE)
83-
* 17:00--17:45 `r link("Exercises", "exercises3.pdf")`
62+
* 16:00--17:00 `r link("Introduction to forensic kinship testing", "ghep2024_lecture3_testing.pdf")` (TE)
63+
* 17:00--17:45 `r link("Exercises III", "exercises3.pdf")`. (`r link("Solutions", "solutions3.pdf")`)
8464
* 17:45--18:00 _Break_
85-
* 18:00--19:00 `r link("Kinship testing with Familias", "ghep2024_lecture4_Familias.pdf", bold = T)` (TE)
86-
* 19:00--19:45 `r link("Exercises", "exercises4.pdf")`. File needed: `r link("kinship-riddle.fam", "kinship-riddle.fam")`
65+
* 18:00--19:00 `r link("Kinship testing with Familias", "ghep2024_lecture4_Familias.pdf")` (TE)
66+
* 19:00--19:45 `r link("Exercises IV", "exercises4.pdf")`. File needed: `r link("kinship-riddle.fam")`. (`r link("Solutions", "solutions4.pdf")`)
8767
* 19:45--20:00 Wrap-up
8868

8969
#### Oct 21: Relatedness inference
90-
* 16:00--17:00 `r link("Realised relatedness: Why are some siblings more alike than others?", "ghep2024_lecture5_realised.pdf", bold = T, live = F)` (MDV)
91-
* 17:00--17:45 `r link("Exercises", "exercises5.pdf", live = F)`
70+
* 16:00--17:00 `r link("Realised relatedness: Why are some siblings more alike than others?", "ghep2024_lecture5_realised.pdf")` (MDV)
71+
* 17:00--17:45 `r link("Exercises V", "exercises5.pdf")`. (`r link("Solutions", "solutions5.pdf")`)
9272
* 17:45--18:00 _Break_
93-
* 18:00--19:00 `r link("Pedigree reconstruction", "ghep2024_lecture6_reconstruction.pdf", bold = T, live = F)` (MDV)
94-
* 19:00--19:45 `r link("Exercises", "exercises6.pdf", live = F)`
73+
* 18:00--19:00 `r link("Pedigree reconstruction", "ghep2024_lecture6_reconstruction.pdf")` (MDV)
74+
* 19:00--19:45 `r link("Exercises VI", "exercises6.pdf")`. (`r link("Solutions", "solutions6.pdf")`)
9575
* 19:45--20:00 Wrap-up
9676

9777
#### Oct 28: Disaster victim identification
98-
* 16:00--17:00 `r link("DNA-based disaster victim identification", "ghep2024_lecture7_dvi.pdf", bold = T, live = F)` (TE)
99-
* 17:00--17:45 `r link("Exercises", "exercises7.pdf", live = F)`
78+
* 16:00--17:00 `r link("DNA-based disaster victim identification", "ghep2024_lecture7_DVI_Familias.pdf")` (TE)
79+
* 17:00--17:45 `r link("Exercises VII", "exercises7.pdf")`. Familias file: `r link("planecrash.fam")`.
10080
* 17:45--18:00 _Break_
101-
* 18:00--19:00 `r link("Practical DVI with Diviana", "ghep2024_lecture8_diviana.pdf", bold = T, live = F)` (MDV)
102-
* 19:00--19:45 `r link("Exercises", "exercises8.pdf", live = F)`
81+
* 18:00--19:00 `r link("Practical DVI with Diviana", "ghep2024_lecture8_diviana.pdf")` (MDV)
82+
* 19:00--19:45 `r link("Exercises VIII", "exercises8.pdf")`
10383
* 19:45--20:00 Wrap-up
10484

10585
Comments and questions may be sent to *magnusdv at gmail dot com*.

vignettes/web_only/course-isfg2023.Rmd

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -46,21 +46,25 @@ install.packages("pedsuite")
4646
## Schedule
4747
The course runs from 18 to 22 (CEST) each day, with a 15 minute break in the middle. The following schedule is tentative:
4848

49+
```{r, echo = F}
50+
link = pedsuite:::linkFUN(folder = "courses/isfg2023")
51+
```
52+
4953
#### Aug 30 (Wednesday) -- Pedigree analysis: Basic
50-
* 18:00--19:00 Lecture 1. [**Pedigrees and measures of relatedness**](https://github.com/magnusdv/pedsuite/blob/master/vignettes/web_only/courses/isfg2023/Lecture1_pedigrees.pdf) (MDV)
54+
* 18:00--19:00 `r link("Pedigrees and measures of relatedness", "Lecture1_pedigrees.pdf")` (MDV)
5155
* 19:00--19:15 Crash course in R (MDV)
52-
* 19:15--20:00 [Exercise set 1](https://github.com/magnusdv/pedsuite/blob/master/vignettes/web_only/courses/isfg2023/exercises1.pdf)
56+
* 19:15--20:00 `r link("Exercises I", "exercises1.pdf")`
5357
* 20:00--20:15 _Break_
54-
* 20:15--21:00 Lecture 2. [**Kinship testing**](https://github.com/magnusdv/pedsuite/blob/master/vignettes/web_only/courses/isfg2023/Lecture2_kinship.pdf) (TE)
55-
* 21:00--21:45 [Exercise set 2](https://github.com/magnusdv/pedsuite/blob/master/vignettes/web_only/courses/isfg2023/exercises2.pdf)
58+
* 20:15--21:00 `r link("Kinship testing", "Lecture2_kinship.pdf")` (TE)
59+
* 21:00--21:45 `r link("Exercises II", "exercises2.pdf")`
5660
* 21:45--22:00 Summary and discussion
5761

5862
#### Aug 31 (Thursday) -- Pedigree analysis: Advanced
59-
* 18:00--19:00 Lecture 3. [**Relatedness inference and pedigree reconstruction**](https://github.com/magnusdv/pedsuite/blob/master/vignettes/web_only/courses/isfg2023/Lecture3_reconstruction.pdf) (MDV)
60-
* 19:00--19:45 [Exercise set 3](https://github.com/magnusdv/pedsuite/blob/master/vignettes/web_only/courses/isfg2023/exercises3.pdf)
63+
* 18:00--19:00 `r link("Relatedness inference and pedigree reconstruction", "Lecture3_reconstruction.pdf")` (MDV)
64+
* 19:00--19:45 `r link("Exercises III", "exercises3.pdf")`
6165
* 19:45--20:00 _Break_
62-
* 20:00--21:00 Lecture 4. [**Disaster victim identification**](https://github.com/magnusdv/pedsuite/blob/master/vignettes/web_only/courses/isfg2023/Lecture4_DVI.pdf) (TE)
63-
* 21:00--21:45 [Exercise set 4](https://github.com/magnusdv/pedsuite/blob/master/vignettes/web_only/courses/isfg2023/exercises4.pdf)
66+
* 20:00--21:00 `r link("Disaster victim identification", "Lecture4_DVI.pdf")` (TE)
67+
* 21:00--21:45 `r link("Exercises IV", "exercises4.pdf")`
6468
* 21:45--22:00 Summary and discussion
6569

6670

vignettes/web_only/course-isfg2024.Rmd

Lines changed: 13 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ title: ISFG Congress 2024 Workshop
33
output: rmarkdown::html_vignette
44
vignette: >
55
%\VignetteEngine{knitr::rmarkdown}
6-
%\VignetteIndexEntry{"Kinship Statistics and Pedigree Analysis"}
6+
%\VignetteIndexEntry{ISFG Congress 2024 Workshop}
77
%\VignetteEncoding{UTF-8}
88
---
99

@@ -57,23 +57,27 @@ After completing the course the participants will have knowledge about:
5757
## Schedule
5858
The workshop is run as a full-day course on Tuesday 10th, from 9 to 18:30 (CEST). The following schedule is tentative:
5959

60+
```{r, echo = F}
61+
link = pedsuite:::linkFUN(folder = "courses/isfg2024")
62+
```
63+
6064
#### Morning session -- Pedigree analysis: Basic
61-
* 09:00--10:00 Lecture 1. [**Pedigrees and measures of relatedness**](https://github.com/magnusdv/pedsuite/blob/master/vignettes/web_only/courses/isfg2024/Lecture1_pedigrees.pdf) (MDV)
62-
* 10:00--11:00 [Exercise set 1](https://github.com/magnusdv/pedsuite/blob/master/vignettes/web_only/courses/isfg2024/exercises1.pdf)
65+
* 09:00--10:00 `r link("Pedigrees and measures of relatedness", "Lecture1_pedigrees.pdf")` (MDV)
66+
* 10:00--11:00 `r link("Exercises I", "exercises1.pdf")`
6367
* 11:00--11:15 _Break_
64-
* 11:15--12:00 Lecture 2. [**Kinship testing**](https://github.com/magnusdv/pedsuite/blob/master/vignettes/web_only/courses/isfg2024/Lecture2-Kinship.pdf) (TE)
65-
* 12:00--12:45 [Exercise set 2](https://github.com/magnusdv/pedsuite/blob/master/vignettes/web_only/courses/isfg2024/exercises2.pdf)
68+
* 11:15--12:00 `r link("Kinship testing", "Lecture2-Kinship.pdf")` (TE)
69+
* 12:00--12:45 `r link("Exercises II", "exercises2.pdf")`
6670
* 12:45--13:00 Summary and discussion
6771

6872

6973
<p style="text-indent: 12px;">**Lunch break 13:00 - 14:30**</p>
7074

7175
#### Afternoon session -- Pedigree analysis: Advanced
72-
* 14:30--15:30 Lecture 3. [**Relatedness inference and pedigree reconstruction**](https://github.com/magnusdv/pedsuite/blob/master/vignettes/web_only/courses/isfg2024/Lecture3-reconstruction.pdf) (MDV)
73-
* 15:30--16:15 [Exercise set 3](https://github.com/magnusdv/pedsuite/blob/master/vignettes/web_only/courses/isfg2024/exercises3.pdf)
76+
* 14:30--15:30 `r link("Relatedness inference and pedigree reconstruction", "Lecture3-reconstruction.pdf")` (MDV)
77+
* 15:30--16:15 `r link("Exercises III", "exercises3.pdf")`
7478
* 16:15--16:30 _Break_
75-
* 16:30--17:30 Lecture 4. [**Disaster victim identification**](https://github.com/magnusdv/pedsuite/blob/master/vignettes/web_only/courses/isfg2024/Lecture4-DVI.pdf) (TE)
76-
* 17:30--18:15 [Exercise set 4](https://github.com/magnusdv/pedsuite/blob/master/vignettes/web_only/courses/isfg2024/exercises4.pdf)
79+
* 16:30--17:30 `r link("Disaster victim identification", "Lecture4-DVI.pdf")` (TE)
80+
* 17:30--18:15 `r link("Exercises IV", "exercises4.pdf")`
7781
* 18:15--18:30 Summary and discussion
7882

7983

vignettes/web_only/course-yid2024.Rmd

Lines changed: 8 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -14,30 +14,6 @@ knitr::opts_chunk$set(echo = TRUE,
1414
comment = "#>")
1515
```
1616

17-
```{r, echo = F}
18-
courseFolder = "courses/yid2024"
19-
20-
# Function for creating links to files
21-
link = function(tit, file = NULL, bold = F, live = T) {
22-
if(bold)
23-
tit = sprintf("**%s**", tit)
24-
25-
if(!live)
26-
return(tit)
27-
28-
locpth = file.path(courseFolder, file)
29-
30-
if(!isTRUE(file.exists(locpth))) {
31-
cat("File does not exist locally:", locpth, "\n")
32-
return(tit)
33-
}
34-
35-
# Formatted link
36-
url = "https://raw.githubusercontent.com/magnusdv/pedsuite/master/vignettes/web_only"
37-
sprintf('[%s](%s/%s){target="_blank"}', tit, url, locpth)
38-
}
39-
```
40-
4117
# Workshop: Genetic relatedness
4218

4319
* Date: Monday 14th of October, 2024
@@ -74,11 +50,15 @@ After completing the course the participants will have knowledge about:
7450
## Schedule
7551
The workshop is run as a half-day course, from 12 to 16, with the following (tentative) schedule:
7652

77-
* 12:00--13:00 Lecture 1. `r link("Introduction to pedigrees and relationships", "yid2024_lecture1_pedigrees.pdf", bold = T)`
78-
* 13:00--13:45 `r link("Exercises", "exercises1.pdf")` <!--. (`r link("Solutions", "solutions1.pdf")`) -->
53+
```{r, echo = F}
54+
link = pedsuite:::linkFUN(folder = "courses/yid2024")
55+
```
56+
57+
* 12:00--13:00 `r link("Introduction to pedigrees and relationships", "yid2024_lecture1_pedigrees.pdf")`
58+
* 13:00--13:45 `r link("Exercises I", "exercises1.pdf")`. (`r link("Solutions", "solutions1.pdf")`)
7959
* 13:45--14:00 _Break_
80-
* 14:00--15:00 Lecture 2. `r link("Measures of relatedness", "yid2024_lecture2_coefficients.pdf", bold = T)`
81-
* 15:00--15:45 `r link("Exercises", "exercises2.pdf")` <!--.. (`r link("Solutions", "solutions2.pdf")`) -->
60+
* 14:00--15:00 `r link("Measures of relatedness", "yid2024_lecture2_coefficients.pdf")`
61+
* 15:00--15:45 `r link("Exercises II", "exercises2.pdf")`. (`r link("Solutions", "solutions2.pdf")`)
8262
* 15:45--16:00 Summary and discussion
8363

8464
Comments and questions may be sent to *magnusdv at gmail dot com*.

vignettes/web_only/courses.Rmd

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -12,21 +12,23 @@ knitr::opts_chunk$set(echo = FALSE,
1212
fig.align = "center",
1313
collapse = TRUE,
1414
comment = "#>")
15-
```
1615
17-
## Upcoming stuff
16+
formatLink = pedsuite:::formatLink
17+
```
1818

19-
* Oct 14, 2024 **Genetic Relatedness**. Half-day workshop at the *Young Investigator Day* at the [NOFE Conference](https://nofe.no/nofe-conference-2024/). Lecturer: Magnus D. Vigeland. [Course homepage](https://magnusdv.github.io/pedsuite/articles/web_only/course-yid2024.html).
19+
## Upcoming events
2020

21-
* Oct 10, 2024. **DIVIANA: A free, user-friendly app for complex DVI cases**. Invited online talk at the _2nd International Symposium on DNA Supported Missing Persons and Disaster Victim Identification_, Tbilisi, Georgia. Speaker: Magnus D. Vigeland.
22-
* Oct 7,14,21 and 28, 2024 **Kinship and pedigree analysis: Methods and applications**. Four-part lecture series, part of the [ISFG-GHEP Online School 2024](https://ghep-isfg.org/en/workshops/ghep-os/autumn2024/WS1/). Teachers: Magnus D. Vigeland and Thore Egeland. [Course homepage](https://magnusdv.github.io/pedsuite/articles/web_only/course-ghep2024.html).
21+
* Oct 7,14,21 and 28, 2024. **Kinship and pedigree analysis: Methods and applications**. Four-part lecture series, part of the [ISFG-GHEP Online School 2024](https://ghep-isfg.org/en/workshops/ghep-os/autumn2024/WS1/). Teachers: Magnus D. Vigeland and Thore Egeland. [Course homepage](https://magnusdv.github.io/pedsuite/articles/web_only/course-ghep2024.html).
2322

24-
## Past stuff
23+
## Past events
2524

2625
### 2024
2726

28-
* Sept 24. **Advanced Theoretical Challenges: Kinship**. Presentation of solutions and results for the theoretical proficiency test prepared for ISFG-GHEP 2024. [Exercises](https://github.com/magnusdv/pedsuite/blob/master/vignettes/web_only/GHEP/ghep_kinship24_final_EN.pdf). [Presentation](https://github.com/magnusdv/pedsuite/blob/master/vignettes/web_only/GHEP/ghep-kinship24-presentation.pdf)
29-
* Sept 11. **DIVIANA: A free, user-friendly app for complex DVI cases**. Oral presentation at the ISFG Congress 2024, Santiago de Compostela. Speaker: Magnus D. Vigeland.
27+
* Oct 15. **DIVIANA: A free, user-friendly app for complex DVI cases**. Research seminar RMF, Storo, Oslo. Speaker: Magnus D. Vigeland.
28+
* Oct 14. **Genetic Relatedness**. Half-day workshop at the *Young Investigator Day* at the [NOFE Conference](https://nofe.no/nofe-conference-2024/). Lecturer: Magnus D. Vigeland. [Course homepage](https://magnusdv.github.io/pedsuite/articles/web_only/course-yid2024.html).
29+
* Oct 10. **DIVIANA: A free, user-friendly app for complex DVI cases**. Invited online talk at the _2nd Intl Symposium on DNA Supported Missing Persons and Disaster Victim Identification_, Tbilisi, Georgia. Speaker: Magnus D. Vigeland. `r formatLink("Slides", "talks/2024-10-10-Tbilisi-DIVIANA.pdf")` (extended version of the ISFG talk).
30+
* Sept 24. **Advanced Theoretical Challenges: Kinship**. Presentation of solutions and results for the theoretical proficiency test prepared for ISFG-GHEP 2024. `r formatLink("Exercises", "GHEP/ghep_kinship24_final_EN.pdf")`. `r formatLink("Presentation", "GHEP/ghep-kinship24-presentation.pdf")`.
31+
* Sept 11. **DIVIANA: A free, user-friendly app for complex DVI cases**. Oral presentation at the ISFG Congress 2024, Santiago de Compostela. Speaker: Magnus D. Vigeland. `r formatLink("Slides", "talks/2024-09-11-ISFG-Santiago.pdf")`.
3032
* Sept 10. **Kinship statistics and pedigree analysis**. Pre-congress workshop, ISFG Congress 2024, Santiago de Compostela. Teachers: Magnus D. Vigeland and Thore Egeland. [Course homepage](https://magnusdv.github.io/pedsuite/articles/web_only/course-isfg2024.html).
3133

3234

Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.

0 commit comments

Comments
 (0)