Skip to content

Conversation

@dengemann
Copy link
Member

MNE Python has been capable of this for at least three months. Time to expose it :)

It finds 6 clusters using an F-test, which is justified here as we do not have any ties on a first level analysis
(permuiting condition order does not affect hypotheses).
Here's two of them:

screenshot 2014-11-05 22 16 44

For conveniences, I've added the neigho(u)r files from fieldtrip, slightly renamed to make a difference.
Thanks for the attendees of our Paris workshop who motivated me to give this example, especially @matthew-tucker

cc @agramfort

mne/channels.py Outdated
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

stupid bug actually

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

so let's catch it.

@dengemann
Copy link
Member Author

cc @t3on @christianbrodbeck

@dengemann dengemann force-pushed the spatio_temporal_sensors branch 2 times, most recently from 74345d6 to 60367ea Compare November 6, 2014 09:58
@coveralls
Copy link

Coverage Status

Coverage decreased (-0.01%) when pulling 74345d6 on dengemann:spatio_temporal_sensors into 5d5339e on mne-tools:master.

@coveralls
Copy link

Coverage Status

Coverage decreased (-0.01%) when pulling 69b7b82 on dengemann:spatio_temporal_sensors into 5d5339e on mne-tools:master.

@dengemann
Copy link
Member Author

@agramfort ready for merge from my end.

@teonbrooks
Copy link
Member

just curious, how are these neighbor templates generated? is it possible that there is a general way that could be used independent of system?

@dengemann
Copy link
Member Author

is it possible that there is a general way that could be used independent of system?

@t3on take a look at the related fieldtrip documentation: http://fieldtrip.fcdonders.nl/template/neighbours they are manually edited.

@teonbrooks
Copy link
Member

ah, i see. they do a combo of automated and manual correction. the manual part is used for addressing the edges of the neighborhoods. if it were fully, it would be ideal, no trailing template files. cool, it looks good.

@dengemann
Copy link
Member Author

@t3on yes, exactly. I think they have spent some efforts to get it right. IIRC initially they pursued an automated approach which turned out insuccient. It woulld be cool to have a magic bullet here, but if it would be that failsafe no one would use these templates.

@larsoner
Copy link
Member

larsoner commented Nov 7, 2014

I'm a little bit surprised a Delaunay triangulation won't work -- you could even use Dijkstra distances afterward to make it based on spatial distance. I assume they tried this sort of thing, though. And if other people have already developed a sufficient solution (manual fixing), I'm fine with that.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why these changes?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@agramfort we had decided aleady earlier to only allow for dropping channels if preloaded. But there was a bug. We only checked for Raw istanced, not for Epochs. I corrected this, because it made the example fail. I then updated the test, becaus they failed as a consequence of actually putting the droppring API with the preload constraint into practice. Ok?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@agramfort we had decided aleady earlier to only allow for dropping channels if preloaded. But there was a bug. We only checked for Raw istanced, not for Epochs. I corrected this, because it made the example fail. I then updated the test, becaus they failed as a consequence of actually putting the droppring API with the preload constraint into practice. Ok?

ok

@dengemann dengemann force-pushed the spatio_temporal_sensors branch from 03ad320 to 67754a5 Compare November 9, 2014 17:15
minor fixes

update tests to deal with preload when dropping channels

cleanup

cleanup2

cleanup viz
fix setup.py

edit manifest

fix attempt setup.py

more setup + py3k fixes

cleanup, add Fieldtrip credits, update reference and whats new

address suggestions from hangout

remove montages.py
@dengemann dengemann force-pushed the spatio_temporal_sensors branch from 67754a5 to 5309c53 Compare November 9, 2014 17:19
@coveralls
Copy link

Coverage Status

Coverage increased (+0.04%) when pulling 044c63e on dengemann:spatio_temporal_sensors into 1d1b3cb on mne-tools:master.

@coveralls
Copy link

coveralls commented Nov 9, 2014

Coverage Status

Coverage decreased (-0.1%) to 90.142% when pulling 7d4e33c on dengemann:spatio_temporal_sensors into 1d1b3cb on mne-tools:master.

@dengemann
Copy link
Member Author

@agramfort Travis is happy. I addressed your suggestions. I'd like to merge this before #1619. It will be less painful to rebase this way.

@coveralls
Copy link

Coverage Status

Coverage increased (+0.04%) when pulling bc0dc99 on dengemann:spatio_temporal_sensors into 1d1b3cb on mne-tools:master.

dengemann added a commit that referenced this pull request Nov 10, 2014
ENH: add spatio-temporal clustering example for sensor data
@dengemann dengemann merged commit cde421a into mne-tools:master Nov 10, 2014
@dengemann
Copy link
Member Author

Thanks @agramfort for your final edits!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants