Beta-stage toolbox to decode ERPs with overlap, e.g. from eye-tracking experiments.
Currently only the overlap corrected LDA¹ proposed by Gal Vishne, Leon Deouell et al. is implemented, but more to follow.
¹ actually any MLJ supported classification/regressoin model is already supported
LDA = @load LDA pkg=MultivariateStats
des = Dict("fixation" => (@formula(0~1+condition+continuous),firbasis((-0.1,1.),100)));
uf_lda = fit(UnfoldDecodingModel,des,evt,dat,LDA(),"fixation"=>:condition)
Does the trick - you should probably do an Unfold.jl tutorial first though!
Not yet registered thus you have to do:
using Pkg
Pkg.add(url="https://github.com/behinger/UnfoldDecode.jl")
using UnfoldDecode
once it is registered, this will simplify to Pkg.add("UnfoldDecode")
have a look at PyMNE.jl to read the data. You need a data-matrix + DataFrames.jl event table (similar to EEGlabs EEG.events)
- Not thoroughly tested, no unit-tests yet!
- Missing features: e.g. No time generalization is available, but straight forward to implement with the current tooling.
If you use this code, please cite this code + the appropriate paper/algorithm
This project follows the all-contributors specification.
Contributions of any kind welcome! You can find the emoji key for the contributors here.