Course manual 2023/2024

Course content

Data is indispensable to a computational scientist and a computer model has little real-world meaning if it is not based on real data. Data can be used to make predictions of future events, repair missing data, or infer how elements of a system interact, among others.

There are different types of data. There are also different types of analyses that one can perform on the data, depending on the type of data and on other properties. Approaches range from fully model-based to (almost) data-only, each of which have associated strengths, weaknesses, and pitfalls. In this intensive course the student will learn his or her first bird’s eye view of a computational scientist’s approach to data-analysis, while simultaneously obtaining practical experience with selected data analysis problems.

The focus of this course is explicitly on breadth, not depth. In particular, no single analysis method will be studied in its full depth or with rigorous mathematical proofs. Instead, the student will first attend lectures focused on overview and will then learn selected topics hands-on by analyzing real data in practical programming assignments. Students are also made wary of common pitfalls in a practical manner.

Some of the course material must be apprehended through self-study (typically connected to a practical assignment). The course may be experienced as relatively intensive, especially if you have little programming or math skills.

The lecturer is himself a researcher in the computational science domain who can relate to his own practical experiences.

Study materials

Other

  • All necessary reading material and data for each assignment will be provided through Canvas free of charge.

  • Slides

Objectives

  • Student can distinguish the predominant types of data in science
  • Student can explain the difference between computational model-based and data-only analysis
  • Student can distinguish whether problems can be implemented using data-only or computational model-based analysis
  • Student can calculate basic correlations from data and understands some of the pitfalls
  • Student can analyze time-series data (stationarity, co-integration, correlation) and understands some of the pitfalls
  • Student can apply basic methods to make predictions based on data
  • Student can apply basic methods to repair missing data
  • Student can apply and evaluate basic methods to fit a model to the data and understands some of the pitfalls
  • Student can analyze real data and decide on the proper steps to answer a research question

Teaching methods

  • Lecture
  • Computer lab session/practical training
  • Working independently on e.g. a project or thesis

In the lecture I will set out the broad overview; in the practical session the student will have hands-on experience with selected topics within this overview; the second half of the course is a team-based project working with real data, applying some of the learned techniques and concepts into practice.

Learning activities

Activiteit

Aantal uur

Hoorcollege

12

Laptopcollege

30

Presentatie

4

Zelfstudie

122

Attendance

Programme's requirements concerning attendance (OER-B):

  • For practical trainings and tutorials/seminars with assignments attendance is, in principle, obligatory. When students do not meet the requirements for attendance, this may lead to not finishing a course with a pass mark.

Additional requirements for this course:

The student may be absent maximum 2 lab sessions in total without consequence. The lab sessions are obligatory and attendance is registered.

Assessment

Item and weight Details

Final grade

The partial average grade for the individual assignments part as well as the partial grade for the practical part need to be at least a 5,5 (Dutch scaling) in order to pass the course. The partial average grade for the individual assignments must be at least 5,5 in order to take part in the group project.

Inspection of assessed work

Contact the course coordinator to make an appointment for inspection.

Assignments

Four individual assignments and one project group assignment (3-4 members), all graded.

Fraud and plagiarism

Over het algemeen geldt dat elke uitwerking die je inlevert ter verkrijging van een beoordeling voor een vak je eigen werk moet zijn, tenzij samenwerken expliciet door de docent is toegestaan. Het inzien of kopiëren van andermans werk (zelfs als je dat hebt gevonden bij de printer, in een openstaande directory of op een onbeheerde computer) of materiaal overnemen uit een boek, tijdschrift, website, code repository of een andere bron - ook al is het gedeeltelijk - en inleveren alsof het je eigen werk is, is plagiaat.

We juichen toe dat je het cursusmateriaal en de opdrachten met medestudenten bespreekt om het beter te begrijpen. Je mag bronnen op het web raadplegen om meer te weten te komen over het onderwerp en om technische problemen op te lossen, maar niet voor regelrechte antwoorden op opgaven. Als in een uitwerking gebruik is gemaakt van externe bronnen zonder dat een bronvermelding is vermeld (bijvoorbeeld in de rapportage of in commentaar in de code), dan kan dat worden beschouwd als plagiaat.

Deze regels zijn er om alle studenten een eerlijke en optimale leeromgeving aan te kunnen bieden. De verleiding kan groot zijn om te plagiëren als de deadline voor een opdracht nadert, maar doe het niet. Elke vorm van plagiaat wordt bestraft. Als een student ernstige fraude heeft gepleegd, kan dat leiden tot het uitschrijven uit de Universiteit. Zie voor meer informatie over het fraude- en plagiaatreglement van de Universiteit van Amsterdam: www.student.uva.nl

Course structure

In the first four weeks there is one individual assignment per week, with a deadline at the end of the week. From week 5 there is the group project which ends on the final day in a group presentation.

Additional information

  • This course is part of the minor program Computational Science (see minor.computationalscience.nl) and runs in parallel with the course Modelling and Simulation. It includes obligatory two-hour lectures and practical computer lab-sessions. At the end of the course, the participants will present the results of their work in a presentation session.
  • You will need some programming experience in a language such as Python (preferred), R, Matlab, or C/C++. Also a ready knowledge of mathematics at least at the level of  "Wiskunde B" is needed, as well as knowledge of basic linear algebra, basic calculus, and basic probability theory.
  • Presence at the lectures is obligatory.

Contact information

Coordinator

  • dr. Rick Quax