R Programming Fundamentals

About

Participants of the educational program are offered a practice-oriented course, which is aimed at helping students acquire knowledge, skills and abilities of programming in R programming language, as well as using this language to work effectively with data. The course covers ten fundamental topics, from installing R programming environment and the basic principles of organizing R programming language to developing applications in R. Special attention is paid to the lexis, syntax and semantics of the R programming language, basic and special classes of objects, data types, their import and export, organization of calculations in R, its graphical capabilities, working with hardware, as well as the development and debugging of program code, functions, libraries of functions and ready-to-use software and applications in R. Each topic of the course includes a relevant theoretical part and practical work. In addition, a series of self-study assignments are offered for each topic, as well as comprehensive advisory assistance.

The proposed course is basic and can be combined with other disciplines related to data analysis. Programming skills in R language is one of the criteria for the inclusion of potential participants in educational programs of the disciplines “Biological and Medical Statistics”, “Data Mining”, “Genomic Data Analysis”, “Analysis of Epigenomic Data”, “Structural Organization of Chromatin and its Analysis”, “Analysis of Transcriptomic Data”, “Analysis of Single-Cell Sequencing” and “Big Biomedical Data Visualization”.

Top

Educational program

The program includes ten topics, united in five sections. The study of each topic includes one lecture (2 hours), one or two (depending on the topic) practical works (from 2 to 4 hours, respectively), as well as independent work. One week is allotted for the study of each topic, however, changes in the schedule are possible at the request of the students. The overall educational plan is presented below.

Week 1: R programming language and environment.
The problem of choosing a programming language for bioinformatics. Origin and evolution of R. R installation and administration. Working in the R console. Working in the R Commander. RStudio. Workspace of R. Society of R developers and R users. Scopes of R in biology and medicine.

Week 2: Basic principles of organization of R.
Basic principles of organization of R. Lexis, syntax and semantics of R. Constants and variables. Built-in operators and functions.

Week 3: R objects.
Development and handling with R objects. Basic R objects: vectors, matrices, tables (data frames), arrays, factors and lists. Special classes of objects for working with biological and medical data, their establishment and use. Attributes of R objects.

Week 4: Working with data in R.
Data types. Import data. Data management in R. Access to elements of vectors, matrices, tables (data frames), arrays, factors and lists. Missing values. Data annotation. Vector and matrix operations. Date and time representation, time series. Data export.

Week 5: Organization of computing in R.
Optimization of data access. Optimization of data structure. Branches and loops in R. R functions. Arguments of functions. Acceleration of computing. Vectorized computing and vectorized functions. Parallelization of computing in R.

Week 6: R graphics capabilities.
Basic graphical capabilities of R. Extension of graphical capabilities: graphical systems grid, lattice and ggplot2, their implementation. Special graphics capabilities of R for biology and medicine.

Week 7: Working with hardware in R.
Access to computer RAM and its effective control. Working with hard drives. Control of CPU. Remote access. Cloud computing. Special technical features R.

Week 8: R code.
Source code development. Code writing rules. Code debugging. Using of external program codes. Interaction with other programming languages.

Week 9: Developing custom functions.
Development of custom functions. Development of custom package of functions. Connecting external packages. Repositories of functions and packages.

Week 10: Development of applications in R.
Development of ready-to-use applications. Pipelines. Working with GitHub, CRAN and Bioconductor. Web applications in R. Blogs and bots with R.

Top

Enrollment

Enrollment to the course is based on the results of an interview. The key selection factor is the applicant’s own motivation. At the same time, it should be noted that the educational program of the course is designed in such a way that the student does not need any special knowledge in the field of mathematics and programming at the start. However, user knowledge of computer technology, as well as basic mathematical knowledge, as well as programming skills, are welcome. In addition, the condition of official enrollment in the course is the conclusion of a contract of the established form.

Top

Form, place and time

The training program can be implemented:

  • face-to-face;
  • using information and communication technologies (remote conferencing such as Zoom);
  • in a mixed form (part of the classes are face-to-face, some are using information and communication technologies);
  • on-line (using video lectures, video tutorials and self-study activities; this form of learning is under development).

Classes can be held both in the daytime and in the evening by agreement with the students. The choice of the form of education is also consistent with the desires of the students. All forms of conducting classes include, if necessary, individual and group consultations, which can be held both in the classroom and remotely.

Classes are held on the basis of the State Educational Institution “Institute for Advanced Studies and Retraining in the Field of Informatization and Management Technologies” at Belarusian State University.

Course venue: Institute for Advanced Studies and Retraining of Belarusian State University, st. Kalvariyskaya-9, room. 730, Minsk, Belarus.

Time:

  • day time: maximum 5 days a week – 8 academic hours per day (academic hour – 40 minutes) from 9:00 to 18:00. The optimal is 4 academic hours two or three times a week. The exact time and number of classes depends on the workload of classrooms and teachers.;
  • evening time: 4 academic hours from 18:00 to 20:50 or from 19:00 to 21:50.

Top

Teachers

Гринев В.В.

Candidate of Biological Sciences, Associate Professor, Principal Investigator, Department of Genetics, Belarusian State University. Molecular geneticist, bioinformatician, specialized in computational transcriptomics.

Phone: +375 (17) 209-58-60
E-mail: grinev_vv@bsu.by

Яцков Н.Н.

Candidate of Physical and Mathematical Sciences, Associate Professor, Department of System Analysis and Computer Modeling, Belarusian State University. Systems analyst specializing in computer modeling and data mining methods.

Phone: +375 (17) 326-02-22
E-mail: yatskou@bsu.by

Guest lecturer

Назаров П.В.

PhD, Candidate of Physical and Mathematical Sciences, Head of the Department of Bioinformatics, Luxembourg Institute of Health (Integrated Bed to Bench Operations 1A-B, rue Thomas Edison, L-1445 Strassen, Luxembourg).

Phone: +352 2697-03-85
E-mail: Petr.Nazarov@lih.lu

Top

End of course

To obtain a state-recognised professional development certificate, the student must successfully complete all the tasks of practical classes, as well as tasks intended for independent work. The final stage of training in this case is passing the test, where the task is to write a program code in R language and use it to analyze typical data.

Top

Feedback

Vasily V. Grinev.

Office Address:
st. Kurchatov-10, office 425, Department of Genetics, Biological Faculty, Belarusian State University, 220010 Minsk, Belarus.

Official Address:
Department of Genetics, Biological Faculty, Belarusian State University, Nezavisimosti Avenue-4, 220050 Minsk, Belarus.

Work Phone: +375 (17) 209-58-60.
Viber: +375 (29) 188-16-93
E-mail: grinev_vv@bsu.by or grinev_vv@mail.ru
Instagram: https://www.instagram.com/biodataanalytics
Web-page: http://bio.bsu.by/genetics/grinev.html
YouTube channel “Grinev’s Educational Channel”: https://www.youtube.com/channel/UCYQ8QwQAX8ubVYYuegxNTYQ

Institute for Advanced Studies and Retraining of Belarusian State University.

E-mail: Klimova@bsu.by
Work Phone: +375 (17) 259-70-59.
Address: st. Kalvariyskaya-9, room 826, Minsk, Belarus.

Top