Academic Year 2019/2020

  • Teaching Mode: Traditional lectures
  • Campus: Bologna
  • Corso: First cycle degree programme (L) in Statistical Sciences (cod. 8873)

Learning outcomes

The main objectives of the course are to provide: - general knowledge and understanding of the Information and Communication Technologies, their concepts and terminology - good understanding of the main concepts of computer programming and of the structure of algorithms, including the elements of computational complexity - ability to write the solution to a problem in terms of algorithm, with special reference to simple statistical computations - good understanding of the R language, including its data types and the language constructs for structured programming - ability to translate an algorithm into an R program.

Course contents

Hardware, software, description of different computer types. Architecture of a personal computer; central processing unit, input and output devices, mass memories, main memories, memory sizes, performances of a computer.

Types of software. Operating system and application programs. Principles of operating systems from the user point of view. Programming environments. Local and wide area networks. Networking. E-mail, internet and web access. Data security.

Basics of programming: definition and design of an algorithm, data types. Data types in R.

Structured programming, sequence, iteration, choice; procedures and functions. Structured programming in R.

Generation and usage of random values in R.

Design of programs. Implementation and test of programs with the R language.

Laboratory activity: programming with the R language.

Readings/Bibliography

W. John Braun and Duncan J. Murdoch, A First Course in Statistical Programming with R, Cambridge University Press,   ISBN-13: 978-0521694247 (2007)

L. Snyder, Fluency With Information Technology (6th Edition), Pearsons, ISBN-13: 978-0133577396, (2014)

ECDL Computer Essentials

ECDL Online Essentials

Among the many books available

ECDL plus Computer Essentials

ECDL PLUS Online Essentials

Teaching methods

The teacher introduces the base concepts, emphasizes a programming method and provides a large amount of examples, with frequent references to statistic problems. Laboratory activity is designed to stimulate the implementation of the programming method.

Assessment methods

The assessment is done in two parts, plus an optional oral part. The final grade is computed adding the grades on the individual parts.

1. A multiple choice test covers theory and lectures; pts. 14, minimum to pass pts. 7 

2.  A programming test is done in the laboratory, it requires the writing of an algorithm for the solution of a computing problem (pts. 8) and the translation in R language, using an appropriate programming environment (pts. 8), total pts. 16, minimum to pass pts. 8. For the algorithm writing, in order to pass it is required at least to correctly set the general structure of the solution and find the main "loops". For the R translation it is necessary at least to represent the general structure of the algorithm with not more than four syntax errors or statement omissions.

3. An optional oral part covers all the topics of the course, the evaluation ranges from -3pts to +3pts. -3 corresponds to "no answer", 0 is assigned if the students exhibits at least a general idea on the topic of the questions.

The oral part is mandatory if the sum of the points obtained in parts 1 and 2 is less than 18 or if the student did not pass one of the two parts.

Teaching tools

The laboratory activity is assisted by tutors who help the students in the development of the tasks assigned by the teacher.
The laboratories are equipped with programming environments for the R language.

Individual programming exercises are needed to pass the exam. Lab attendance is strongly recommended.

Links to further information

https://elearning-cds.unibo.it/course/view.php?id=5347

Office hours

See the website of Claudio Sartori

SDGs

Quality education

This teaching activity contributes to the achievement of the Sustainable Development Goals of the UN 2030 Agenda.