[Mne_analysis] computing peak frequency in source space

Alexandre Gramfort alexandre.gramfort at telecom-paristech.fr
Tue Oct 1 03:00:21 EDT 2013
Search archives:

hi Luke,

> Is there a reason that compute_source_psd doesn't support MNE or is this
> just a bug?

yes it is.

would you be willing to give a try at fixing it?

See the "How to contribute" page.

http://martinos.org/mne/contributing.html

Best,
Alex

> The error I get comes from line 429 of time_frequency.py. basically
> noise_norm is None so noise_norm.size errors.
>
> AttributeError: 'NoneType' object has no attribute 'size'
>
> and in _assemble_kernel (inverse.py line 669) noise_norm is set to None if
> the method = 'MNE'
>
> it seems like line 429 is just trying to get the number of sources? Couldn't
> we get that from K? or am i missing something?
>
> Thanks,
> Luke
>
>
> On Mon, Sep 30, 2013 at 12:55 PM, Martin Luessi
> <mluessi at nmr.mgh.harvard.edu> wrote:
>>
>> Hi Luke,
>>
>> I think you want to either use compute_source_psd or (for raw data) or
>> compute_source_psd_epochs (for epoched data). The functions are in
>> mne.minimum_norm.time_frequency. There is an example here:
>>
>>
>> http://martinos.org/mne/auto_examples/time_frequency/plot_source_power_spectrum.html
>>
>> I hope this helps.
>>
>> Martin
>>
>>
>> On 09/30/13 12:41, Luke Bloy wrote:
>>>
>>> Thanks for the quick reply Denis.
>>>
>>> I'm interested in the peak frequency within a band not the power
>>> timecourse of the band so source_band_induced_power isn't what I want. I
>>> also want to stick with MNE, as opposed to DICS or another beamformer,
>>> for localization since I will want to compare with mne/dspm power
>>> estimates.
>>>
>>> The other complicating factor is that I'm using resting state data (~~ 5
>>> minutes), so most of the inverse operator code in python runs into
>>> memory problems. Otherwise I could just do apply_inverse and then work
>>> on the returned timecourses in the stc.
>>>
>>> once I have a time course for each source finding the peak frequency
>>> will be pretty straight forward using numpy.fft and numpy.fft.fftfreq.
>>>
>>> Hope this makes sense
>>> -Luke
>>>
>>>
>>>
>>> On Mon, Sep 30, 2013 at 12:14 PM, Denis-Alexander Engemann
>>> <denis.engemann at gmail.com <mailto:denis.engemann at gmail.com>> wrote:
>>>
>>>     Hi Luke,
>>>
>>>
>>>     On Mon, Sep 30, 2013 at 6:02 PM, Luke Bloy <luke.bloy at gmail.com
>>>     <mailto:luke.bloy at gmail.com>> wrote:
>>>
>>>         Hi all,
>>>
>>>         I am interested in computing the peak frequency within a band
>>>         for each source.
>>>
>>>         So my first question is does this already exists somewhere?
>>>
>>>
>>>
>>>     This example might be of interest.
>>>
>>>
>>> http://martinos.org/mne/auto_examples/time_frequency/plot_source_space_time_frequency.html#example-time-frequency-plot-source-space-time-frequency-py
>>>
>>>     Basically it returns source estimates per frequency band each of
>>>     which can be visualized on e.g. a cortical surface.
>>>
>>>     Another timely alternative is the DICS bearmformer recently added by
>>>     Roman:
>>>
>>>
>>> https://github.com/mne-tools/mne-python/blob/master/examples/inverse/plot_dics_source_power.py
>>>
>>>
>>> https://github.com/mne-tools/mne-python/blob/master/examples/inverse/plot_dics_beamformer.py
>>>
>>>     you can always use numpy.argmax and argsort functions to quickly
>>>     navigate through peaks inside the resulting arrays.
>>>
>>>
>>>         If not what would people suggest as a jumping off point for
>>>         developing it. I was thinking of following apply_inverse in
>>>         inverse.py until I get the final inverse operator (K in line
>>>         753) and then looping through each row (source) in K to compute
>>>         the time course and peak power and frequency. Any other
>>>         suggestions or downsides to this approach?
>>>
>>>
>>>     Maybe let's first see whether what is implemented so far gives you
>>>     what you're looking for.
>>>
>>>     I hope this helps + cheers,
>>>     Denis
>>>
>>>         Thanks,
>>>         Luke
>>>
>>>
>>>
>>>         _______________________________________________
>>>         Mne_analysis mailing list
>>>         Mne_analysis at nmr.mgh.harvard.edu
>>>         <mailto:Mne_analysis at nmr.mgh.harvard.edu>
>>>
>>>         https://mail.nmr.mgh.harvard.edu/mailman/listinfo/mne_analysis
>>>
>>>
>>>         The information in this e-mail is intended only for the person
>>>         to whom it is
>>>         addressed. If you believe this e-mail was sent to you in error
>>>         and the e-mail
>>>         contains patient information, please contact the Partners
>>>         Compliance HelpLine at
>>>         http://www.partners.org/complianceline . If the e-mail was sent
>>>         to you in error
>>>         but does not contain patient information, please contact the
>>>         sender and properly
>>>         dispose of the e-mail.
>>>
>>>
>>>
>>>
>>>
>>> _______________________________________________
>>> Mne_analysis mailing list
>>> Mne_analysis at nmr.mgh.harvard.edu
>>> https://mail.nmr.mgh.harvard.edu/mailman/listinfo/mne_analysis
>>>
>>
>>
>> --
>> Martin Luessi, Ph.D.
>>
>> Research Fellow
>>
>> Department of Radiology
>> Athinoula A. Martinos Center for Biomedical Imaging
>> Massachusetts General Hospital
>> Harvard Medical School
>> 149 13th Street
>> Charlestown, MA 02129
>>
>> Fax: +1 617 726-7422
>
>
>
> _______________________________________________
> Mne_analysis mailing list
> Mne_analysis at nmr.mgh.harvard.edu
> https://mail.nmr.mgh.harvard.edu/mailman/listinfo/mne_analysis
>
>
> The information in this e-mail is intended only for the person to whom it is
> addressed. If you believe this e-mail was sent to you in error and the
> e-mail
> contains patient information, please contact the Partners Compliance
> HelpLine at
> http://www.partners.org/complianceline . If the e-mail was sent to you in
> error
> but does not contain patient information, please contact the sender and
> properly
> dispose of the e-mail.
>



More information about the Mne_analysis mailing list