Open robertoostenveld opened 2 months ago
The BrainVision code is now on PyPi at https://pypi.org/project/brainvision/.
I implemented an automatic release "action" following the instructions at https://medium.com/@blackary/publishing-a-python-package-from-github-to-pypi-in-2024-a6fb8635d45d
As discussed with @CPernet we need to come up with a few thought-through meaningful scrambling options for MEEG data, beyond time series scrambling. Let's reopen this issue to bounce ideas back and forth.
We probably need to have 2 or 3 additional ways to break the spatio/temporal/spectral structure in the data.
I am currently thinking about a combination of spatial filtering and blockwise scrambling. For ERP'ish application this probably also would need to take the structure of the events into account.
Specifically, using spatial unmixing (based on 'some' heuristic), then a scrambling step (e.g. scrambling the order of the latent components and/or blockwise scrambling (i.e. keeping the overall spectral structure in the data, and/or time-locked to event stuff), then again a spatial mixing step, would be a flexible framework that allows for a mixture of spatiotemporal scrambling, preserving aspects of the overall structure in the data
I agree that within the ICA framework, one is likely able to mess stuff up different ways (after characterizing the evoked and spectral aspects id IC). I also agree (as discussed on line) that often the pipeline will be something like 'can want to see if the pipeline can detect X', so the feature of interest needs somehow to be present.
not sure all makes sense, but putting some ideas down ...
@marcelzwiers @schoffelen @arnodelorme @CPernet
For your information, I am working on the implementation of the BrainVision Core data format in the BIDScramble. The EEGLAB
.set
format is too complex for now, but the data in use case 2.4 can be converted (using FieldTrip) from EEGLAB to BrainVision format without compromising the analysis pipeline.As the [pybv](https://github.com/bids-standard/pybv reader was a bit of a mess with regards to dependencies and not symmetric in reading and writing, I implemented my own BrainVision read and write package. See http://github.com/robertoostenveld/brainvision. I will make sure that this gets added to pypi to allow installation with pip.