forked from privefl/rmarkdown-website-template
-
Notifications
You must be signed in to change notification settings - Fork 5
/
sessions.Rmd
254 lines (173 loc) · 12.8 KB
/
sessions.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
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
---
title: "Working sessions"
---
<!-- **Next session**: TBA -->
**Next session**: Thursday April 6, 2023 @IMAG (Auditorium) at 17:30
<!-- Registration link will be posted soon. -->
Registration to the event [here](https://www.eventbrite.com/e/billets-r-in-grenoble-38-performance-of-r-code-601322962167). Attendance is totally free but **registration is mandatory** and is on a first-come, first-serve basis.
No Zoom this time.
<!-- Link to Zoom [here](https://univ-grenoble-alpes-fr.zoom.us/j/93497058691?pwd=UW12OTlvM3dWOU9adkE4ZHJwbGFzdz09), for those who cannot join in-person but are still interested in seeing the talk. Please only register if you plan to attend in-person. -->
You can subscribe to our emailing list on the following link: [r-in-grenoble emailing list](https://listes.univ-grenoble-alpes.fr/sympa/subscribe/r-in-grenoble?previous_action=info).
You can checkout our YouTube channel [here](https://www.youtube.com/channel/UCA2w7SQxsYH0NKGS8vmAqbg).
### Help us communicate
Please talk about our R group with your colleagues. Tell them to register to the mailing list.
You can also **print [this poster](r-in-gre_program_2022-2023.pdf) and put it up somewhere at work**.
### Join our R working sessions in Grenoble
We organise monthly working sessions on Thursdays at 17:30, at the [IMAG building](https://r-in-grenoble.github.io/members.html).
<!-- **Due to COVID-19 restrictions all sessions to come and until further notice will be held by ZOOM**. -->
Please find the guidelines for these sessions:
- Everyone is welcome (beginners to advanced R users, just bring your laptop).
- Presentations/tutorials will last 30 to 60 min, on some R topics that can be useful to many people, with practical examples.
- We want to have a lightning talk (5 min) after the main session so that people can quickly present how they use R in their work (or a specific package, etc.).
- During the second part of the session, people could ask and answer some questions about specific problems they encounter when coding in R.
- If you wish to share your R experience during a working session and/or to co-animate a working session, please [contact us](mailto:MJ.ROLLAND@gmail.com).
### Schedule of 2022-2023
*Click on the title to see the session description*
```{r setup, include=FALSE, warning=FALSE}
knitr::opts_chunk$set(echo = FALSE)
library(tidyverse)
library(lubridate)
Sys.setlocale("LC_TIME", "C")
library(htmltools)
```
```{r, warning=FALSE}
program <- tibble::tribble(
~Date, ~Authors, ~Affiliation, ~Title, ~Description,
"20/10/2022", "Matthieu ROLLAND", "World Health Organisation", "Publication ready tables with {gtsummary}", "The {gtsummary} package provides an elegant and flexible way to create publication-ready analytical and summary tables using R. This package can summarize datasets, regression models, and more, using sensible defaults with highly customizable capabilities. This session will be a very straightforward and hands on talk, presenting the {gtsummary} package that can be useful for any level of R user, wanting to easily and reproducibly produce nice looking tables that follow journal standards in many different formats (html, rtf, etc). The aim will be for attendees to understand the basics of the package, but we will also try to dig a little deeper in the structure of a gtsummary object and learn how to customize tables to fit your specific needs.",
"10/11/2022", "Nicolas JOVANOVIC", "INSERM", "Advanced data visualisation with {ggplot2}", "The {ggplot2} package is the perfect solution for making elegant and comprehensible graphics with a very short amount of code lines. Using the “Grammar of Graphics” as its core principle, this package provides a lot of easy to understand tools to help R users of any level to quickly and effortlessly produce publication-ready graphics. In this session, after a brief presentation of ggplot2, we will try to understand the “grammar” part of a ggplot2’s plot. Understanding this allow the user to create any plot fairly easily, because they know how each block works and interact with one another.",
"1/12/2022", "Maxime JAUNATRE", "INRAE", "Using Git with R", "Git is a version control system independent from R, it provides a neat way to stop the spread of old scripts sent by e-mail, enhances scientific reproductibility and provides a framework to collaborate on writing code with other people. This software can be used by every R-User, within Rstudio or using a command line tool, at any step of a project or package development. This session will present the core principles when managing code files with Git, and why it may save you time when working in team. At the end of this session you will be able to use Git for saving your work and share it easily online on GitHub/GitLab. This may even be your first step in understanding how to contribute to your most loved open-source package on GitHub/GitLab.",
"5/1/2023", "Nicolas JOVANOVIC", "INSERM", "Data manipulation with {dplyr} and {data.table}", "The {dplyr} package is one of the core packages of the tidyverse ecosystem that provides a grammar of data manipulation with a consistent interface for working with data frames. It supports operations to filter, group, and summarize data. {dplyr} also includes functions for working with databases and can be used to efficiently manipulate large datasets. This session will focus on the {dplyr} basics, but we will also overview the {data.table} package which is usually much faster than {dplyr} and the {dtplyr} package that provides a data.table backend for dplyr.",
"26/1/2023", "Ronaldo SILVA", "World Health Organisation", "Dynamic web applications with {shiny}", NA,
"9/3/2023", "Nikita GUSAROV", "GAEL", "Litterate programming with {Rmarkdown} and {Quarto}", "Markup languages allow users to bypass a lot of limitations introduced by widespread \"What you see is what you get\" (WYSIWYG) based alternatives.
Contrary to the more sophisticated LaTeX or troff, markdown is extremely simple and easy to learn alternative with intuitive syntax.
Combined with pandoc back-end the resulting documents may be converted to nearly any derided format possible: HTML, PDF, DOCX and many more.
{Rmarkdown} introduces the possibility to use R, Python, C++ and other languages alongside markdown, simplifying the creation of reproducible reports and documents.
This session will focus on {Rmarkdown} based workflow, offering as well the introduction to {Quarto}, a novel alternative for classical {Rmarkdown}.",
"6/4/2023", "Florian PRIVÉ", "Aarhus University (DK)", "Performance of R code", "How to avoid writing slow R code? What are the strategies to write R code that is fast to run? I will provide some examples, and I will explain why some R codes are faster than others, so that you understand how to make your code faster. I'll also quickly talk about other strategies to make your code faster, such as Rcpp and parallelism.",
"4/5/2023", "Romain FRANÇOIS", "RStudio", "Surprise talk (TBD)", NA,
"1/6/2023", "Matthieu ROLLAND", "World Health Organisation", "Workflow management with {targets}", NA
)
#stopifnot(all(wday(program$Date) == 5)) # Thursdays (begin with Sundays)
program <- program %>%
mutate(Date = dmy(Date)) %>%
arrange(Date) %>%
mutate(Date = format(Date, format = "%B %d, %Y"),
Description = ifelse(is.na(Description), "TBA", Description))
```
```{css}
.schedule {
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}
.limit {
width: 100%;
padding: 5px 0 5px 0;
}
.workshops-button {
padding: 0.75em 1.25em;
background-color: #cccccc;
opacity: 0.9;
width: auto;
color: black;
text-align: center;
overflow: auto;
}
.left-date {
width: 20%;
float: left;
text-align: left;
}
.center-title {
width: 60%;
float: left;
text-align: center;
font-size: 120%;
}
.right-authors {
width: 20%;
float: right;
text-align: right;
}
.workshops {
margin: 1em 1em 0 0;
}
.active {
background-color: #333333;
color: whitesmoke;
}
```
```{js}
function main() {
$('.schedule').hide();
$('.schedule').fadeIn(2000);
$('.workshops').hide();
$('.workshops-button').on('click', function() {
$(this).next().slideToggle(400);
$(this).toggleClass('active');
});
}
$(document).ready(main);
```
```{r}
div(
class = "schedule",
apply(program, 1, function(event) {
div(
class = "limit",
div(class = "workshops-button",
div(class = "left-date",
event[['Date']]),
div(class = "center-title",
tags$i(event[['Title']])),
div(class = "right-authors",
event[['Authors']])),
tags$ul(class = "workshops",
event[["Description"]])
)
})
)
```
<br>
### Materials from previous sessions
#### 2022 - 2023
- Performance of R code: [slides](https://privefl.github.io/R-presentation/Rperf.html)
- Litterate programming with {Rmarkdown} and {Quarto}: [slides](presentation/presentation_20220309.pdf)
- Publication ready tables with {gtsummary}: [slides](http://www.danieldsjoberg.com/gtsummary-weill-cornell-presentation/), [video](https://www.youtube.com/watch?v=VUeYRfHJrHU)
#### 2021 - 2022
Unfortunately, the group was inactive during that period.
#### 2020 - 2021
- Time Series: [tutorial](https://github.com/zaher-stat/R_in_Grenoble-Time_Series_Talk)
- Building dashboards in R/shiny (and improve them with logs and user feedback): [slides](presentation/Cadyco_R_in_Grenoble_2021-05-25_v1.pdf), [data](presentation/export_Rdata_25_May)
- Git in R for beginners: [video](https://www.youtube.com/watch?v=EYHNuljz7Fo), [slides](presentation/git-github/git_for_beginners.html)
- Machine learning in R: [video](https://www.youtube.com/watch?v=AkWb-toK1gE)
- Using UGA servers with R: [GRICAD slides](https://bouttiep.gricad-pages.univ-grenoble-alpes.fr/slides/20210114_group-r.html), [Servers with R slides](presentation/RinGrenoble_RandCIMENT_20210114_GUEGUEN.pdf), [video](https://www.youtube.com/watch?v=Nido4_bZ3SE)
- Alternatives to Rstudio: [slides](presentation/rstudio_alternatives.pdf), [video](https://youtu.be/UzjCy6cyRiI)
- Collect and use open access World Bank data to know your country: [slides](https://bttomio.github.io/slides/WDI/Slides.html), [video](https://www.youtube.com/watch?v=vDfZ_Vxzgeo)
- [Organising exams in R](presentation/rexam2slides.pdf)
#### 2019 - 2020
- [Organising a data challenge in R](presentation/20200130_r_meeting_codalab.pdf)
- [An introduction to Bayesian multilevel models using R, brms, and Stan](https://www.barelysignificant.com/slides/RGUG2019)
- Spatial data with packages {sf} and {raster}: [Presentation](https://ihough.github.io/talk_2019-10_geospatial/talk_2019-10_geospatial.html#1); [R script](https://github.com/ihough/talk_2019-10_geospatial/blob/master/mapping_demo.R)
- [Reproducible research in R](https://annakrystalli.me/talks/r-in-repro-research.html)
#### 2018 - 2019
- [Data visualization with {ggplot2}](https://privefl.github.io/R-presentation/ggplot2.html)
- [Data manipulation with package {dplyr}](presentation/dplyr.html)
- [R Markdown](http://privefl.github.io/R-presentation/rmarkdown.html)
- [Good practice for writing R code and R packages](https://magrichard.github.io/good_coding_practices/rpresentation.html)
- Deep Learning with package {keras}: [presentation](presentation/R_in_Grenoble_RPres.zip) and [exercise](presentation/keras.html) ([.Rmd](presentation/keras.Rmd))
- [Manage your workflow with package {drake}](presentation/drake.pdf)
- [Linear models in R](https://t.co/7Wq3MfH6B9)
- [Image processing with package {imager}](http://bit.ly/RUGgre12)
- [What R can do for you](http://bit.ly/RUGgre11)
#### 2017 - 2018
- [Make your personal webpage with R](https://privefl.github.io/R-presentation/rmarkdown-websites.html)
- [Out-of-memory matrices](https://privefl.github.io/R-presentation/bigstatsr.html)
- [Parallel computing](session-parallel.zip)
- [{Rcpp}](https://privefl.github.io/R-presentation/Rcpp.html)
- [Best coding practices](https://jarbel.github.io/Rgoodpractice/rpresentation.html)
- [RStudio and Git](https://privefl.github.io/R-presentation/rstudio-git.html)
- [Geographical Information Systems](http://www-leca.ujf-grenoble.fr/pageperso/boyerfr/ESPACE-PERSO/TP.zip)
- [Network analysis with {igraph}](http://www.gipsa-lab.grenoble-inp.fr/~sophie.achard/Tutorial_brainwaver/tutorial_practice_graph_html.html)
- [Visualization with {ggplot2}](https://privefl.github.io/R-presentation/ggplot2.html)
- [An introduction to R](https://github.com/fchuffar/intro_r)