Week 3 - Blog Post

Published: 06/28/2021

What Have I Been Working On: This week, I’ve been working on developing a "Connectivity" data structure class container for time-varying connectivity, frequency-varying connectivity, or spectrotemporal connectivity, and their counterparts over "Epochs". I have decided to use "xarray" as a base class for storing the data, since it provides naming and structure for multi-dimensional arrays. This has involved a bit of reading through documentation of "xarray" and discussing with mne developers. In addition, I've made an official v0.1 pypi release, so that I could deprecate the MNE-Python.connectivity submodule. So far, I have successfully updated the unit tests and documentation to work with the new connectivity containers. What Have I Been Struggling With: By switching the codebase to return this new connectivity container class, I may have messed up some memory optimizations that occur in some of the docs building. What Solutions Have I Found: This problem was isolated to be caused by a "sparse" array being represented as a dense array, so now I have to determine the best way to construct a sparse array and pass it as an underlying data representation to the connectivity data structure.