ϲʿ¼

Internal

PY2SCP - Scientific computing for Psychologists

ϲʿ¼

PY2SCP-Scientific computing for Psychologists

Module Provider: Psychology
Number of credits: 20 [10 ECTS credits]
Level:5
Terms in which taught: Spring term module
Pre-requisites: PY1INM Introduction to Neuroscience Methods and PY1IPR Introduction to Psychological Research
Non-modular pre-requisites:
Co-requisites:
Modules excluded:
Current from: 2022/3

Module Convenor: Dr Peter Scarfe
Email: p.scarfe@reading.ac.uk

Type of module:

Summary module description:

Students will be introduced to the basics of scientific computation for data analysis and visualisation, building on the neuroscience methods introduced in the prerequisite module PY1INM. Consequently, examples and problems will be drawn mostly from neuroscience, psychology, psychophysics and neuroimaging. The foundational skill taught is programming (coding, scripting). This will be in either Python or R, and will make use of appropriate scientific libraries and packages. All work will be carried out in the computer lab, with a strong focus on solving problems to acquire practical skills, and assessment is based primarily on completing three computational projects during term time.


Aims:

Research projects in neuroscience and psychology often require the extensive use of computers, to drive and control sophisticated hardware, collect and process large quantities of data, perform complex analyses, and visualise the results in an appealing and informative manner. To become truly creative and efficient in scientific computation, one has to take the leap from being a software user to becoming a software creator. Furthermore, the technical skills of coding and data processing translate effortlessly across fields and are among the most highly prized in the current job market.



Our aim in this module is to teach practical coding skills and show how to apply them to typical problems in scientific computation, in particular in the neuroscience and psychology domain. To this end, we will use the programming language Python or R and their associated ecosystems for scientific computation. Students will learn basic coding (loops, control structures, etc.) and become familiar with using the packages for storing and manipulating data, and for data visualisation and analysis. To provide students with robust skill sets, we will use hands-on combinations of lectures and labs, where students will solve exercises using coding on their computers.


Assessable learning outcomes:

By the end of the module the student will:




  • Be able to code in Python or R at a basic to intermediate level

  • Know how to employ scientific libraries and packages in basic data analysis workflows

  • Be competent at coding typical data visualisation tasks in Python or R


Additional outcomes:

Students will become familiar with setting up an appropriate working environment for scientific computations (e.g., interacting with an Integrated Development Environment (IDE)) and how to prepare data for easy processing. This experience provides an essential preparation for advanced study and research in neuroscience, including neuroscience-related research projects in Part 3.


Outline content:

The module includes topics such as the following:




  • Software: introduction to Python or R and their associated libraries / ecosystem

  • Lab / project work: programming as creative problem solving and data handling

  • Programming: data types, functional decomposition, loops, control structures, libraries

  • Data analysis: arrays, data frames, indexing, optimization, interpolation, Fourier analysis

  • Data visualisation: line plots, subplots, log & polar plots, scatter & 3D plots, image manipulation


Brief description of teaching and learning methods:

The module is split into two blocks, each five weeks long. Every block culminates in the submission of a computational project that every student has worked on individually and independently. The skills needed to complete this project are acquired throughout the corresponding block.



Contact hours consist of lectures and computer labs being combined fluidly: A typical two-hour session consists of an initial presentation (lecture), followed by exercises the students wo rk on together in groups assisted by the teaching team (lab), followed by an explanation of a proper solution to these exercises including general feedback to the students. There will be two two-hour sessions per week, except for the two project weeks.



Projects are designed to be worked on progressively as new skills are being acquired in the blocks. In addition, at the end of every block there will be one dedicated project week. In these weeks a two-hour seminar will b e held. Here the material of the block will be briefly reviewed, and students then can ask questions and get help with finishing their projects.


Contact hours:
Autumn Spring Summer
Lectures 16
Seminars 4
Supervised time in studio/workshop 16
Guided independent study:
Wider reading (independent) 20
Wider reading (directed) 20
Advance preparation for classes 32
Preparation for seminars 8
Preparation of practical report 24
Carry-out research project 60
Total hours by term 0 200 0
Total hours for module 200

Summative Assessment Methods:
Method Percentage
Project output other than dissertation 100

Summative assessment- Examinations:

This module is assessed via 100% coursework.


Summative assessment- Coursework and in-class tests:

This module is assessed via coursework (100%), consisting of:




  • Two computational projects, the first worth 40%, the second worth 60%.


Formative assessment methods:

Teaching is to a large extent based on students working in groups through a number of exercises pertaining to a topic initially presented. These exercises are not marked, but rather a correct solution is provided and discussed at the end. Feedback is given to students both while they are working on the exercises, and during the discussion at the end. This provides continuous formative assessment through practical lab work, as appropriate for teaching the “craft” of scientific computation.


Penalties for late submission:

The Support Centres will apply the following penalties for work submitted late:

  • where the piece of work is submitted after the original deadline (or any formally agreed extension to the deadline): 10% of the total marks available for that piece of work will be deducted from the mark for each working day (or part thereof) following the deadline up to a total of five working days;
  • where the piece of work is submitted more than five working days after the original deadline (or any formally agreed extension to the deadline): a mark of zero will be recorded.
The University policy statement on penalties for late submission can be found at: /cqsd/-/media/project/functions/cqsd/documents/cqsd-old-site-documents/penaltiesforlatesubmission.pdf
You are strongly advised to ensure that coursework is submitted by the relevant deadline. You should note that it is advisable to submit work in an unfinished state rather than to fail to submit any work.

Assessment requirements for a pass:

A mark of 40% overall.


Reassessment arrangements:

Re-assessment is by submission of a computational project addressing the module’s intended learning outcomes during the summer. The reassessment deadline will be communicated to you by your School or Support Centre.


Additional Costs (specified where applicable):

Last updated: 31 October 2022

THE INFORMATION CONTAINED IN THIS MODULE DESCRIPTION DOES NOT FORM ANY PART OF A STUDENT'S CONTRACT.

Things to do now