This repository contains the code used for analyses in the paper Dopamine and DBS accelerate the neural dynamics of volitional action in Parkinson’s disease, which has been released as a preprint at bioRxiv:
https://www.biorxiv.org/content/10.1101/2023.10.30.564700v4
To get started right away, skip down to the section Getting started.
Most analyses were performed using Python and can in principle be done on any standard computer running Windows, macOS or Linux. Most code was run on a Windows 11 notebook with a 4-core CPU (Intel Core i7), 32GB RAM, without dedicated GPU. The main Python code for analyses was packaged for ease of use and can be found in the src/motor_intention folder. The analysis code makes use of other custom packages that were created and released on PyPi for this purpose, including PTE, PTE Decode, PTE Stats. A stripped-down version of py_neuromodulation was used for calculation of features for the machine learning-based decoding of motor intention and can be found here: https://github.com/richardkoehler/py_neuromodulation/tree/paper_motor_intenion.
Computationally expensive analyses related to calculation of multivariate Granger causality in MNE-Connectivity were performed on the HPC for Research cluster of the Berlin Institute of Health. Corresponding Python code and Slurm scripts can be found in the folder granger_causality.
Visualization and statistics related to Granger causality analyses were done in MATLAB. The corresponding code can be found in the folder matlab.
To make sure the analysis steps are reproduced as close as possible, I recommend following the steps below:
First, download this repository using the version control system git. Type the following command into a terminal:
git clone https://github.com/richardkoehler/paper-motor-intention
Use the package manager conda to set up a new working environment. To do so, in your command line navigate to the location where this repository is stored on your machine and type:
conda env create -f env.yml
This will create a new conda environment called motor-intention
and install
Python 3.10.9 including all necessary packages. Then activate the environment:
$ conda activate motor-intention