Introduction to Scientific Programming
Selectable PhD course within the subject of Psychology, 7.5 credits (Course code: FHS0208)
The course syllabus below in PDF Pdf, 165 kB.
Goals
Students who successfully complete this course will gain an understanding of the principles of scientific programming and the core elements that apply to different programming languages. Students will learn how to develop, implement, and test code for data analysis.
Content
This is an introductory programming course aimed at PhD students without or with limited prior knowledge of programming. The course teaches general principles of programming which apply to different programming languages and may be flexibly adapted to more specific use in scientific analysis. Students can choose between R and MATLAB languages to complete coding assignments, which will provide opportunities for learning more specific programming skills. A laptop is required to execute practical tasks. Some basic level of statistics is recommended, but not mandatory.
The main topics for this course include:
- Program design: abstraction, sequencing, and algorithms.
- Variables, matrices, and operators.
- Data types and structures.
- Basic syntax, objects, and formulas.
- Flow control: conditional statements and loops.
- Loading and saving data.
- Functional programming: functions, arguments, and parameters.
- Data visualization.
- Good practices and efficient coding.
- Debugging.
IDEs and coding environments: Rstudio and MATLAB.
Teaching
Teaching for this course will integrate lectures with interactive sessions for the implementation of coding assignments.
Examination
Students will have to complete a 2-step homework assignment that consists in creating and optimizing a code for automated data analysis based on their own research. Evaluation will be based on homework project report, project presentation and final code.
Literature
A total of about 500 pages.
e-Book: How to think like a computer scientist. A. Downey, J. Elkner, C. Meyers.
Suggested reading for R: R for data science. H. Wickham, or The Book of R: a First Course in Programming and Statistics. T. M. Davies.
Suggested reading for MATLAB: MATLAB: A Practical Introduction to Programming and Problem Solving. S. Attaway, or An Introduction to MATLAB for Behavioral Researchers. C. R. Madan.