[Mne_analysis] question about epochs.next()

Dan McCloy drmccloy at uw.edu
Tue Apr 5 19:45:29 EDT 2016
Search archives:

thanks Mainak, but my use case is a little strange, and I don't think
iter_evoked will help.  I need potentially different crop windows for each
event type (same length, but different start/end points), but I need to
keep the individual epochs (not averages) because they're getting fed into
a classifier.  I'm happy to do a PR to change the docs if the consensus is
that it is indeed the docs that should change, not the implementation of
next().

On Tue, Apr 5, 2016 at 4:27 PM, Mainak Jas <mainakjas at gmail.com> wrote:

> Hi Dan,
>
> Since you are iterating over single epochs, it might make more sense to
> use the iterator which returns an evoked object. You can do something like:
>
> for ev in epochs.iter_evoked()
>     ev.crop(tmin, tmax)
>
> Does this help? Fix to the docs is more than welcome.
>
> Best regards,
> Mainak
>
>
> On Tue, Apr 5, 2016 at 10:05 PM, Dan McCloy <drmccloy at uw.edu> wrote:
>
>> On Tue, Apr 5, 2016 at 12:19 PM, Chris Holdgraf <choldgraf at berkeley.edu>
>> wrote:
>>
>>> sometimes it's more useful to return arrays.
>>>
>>
>> Sure, but that's why there is a get_data method, right?  IMO the
>> docstring reflects how I expected it to work before even reading the
>> docstring, so my vote would be to make .next() actually do that, rather
>> than changing the docstring to reflect what it does currently.  Issue
>> created: https://github.com/mne-tools/mne-python/issues/3099
>>
>>
>>> On Tue, Apr 5, 2016 at 12:03 PM, Dan McCloy <drmccloy at uw.edu> wrote:
>>>
>>>> I was puzzled today why this works...
>>>>
>>>> for ix, _ in enumerate(epochs):
>>>>     new_epoch = epochs[ix].crop(tmin, tmax, copy=True)
>>>>
>>>> ... but this does not:
>>>>
>>>> for epoch in epochs:
>>>>     new_epoch = epoch.crop(..., copy=True)
>>>>
>>>> AttributeError: 'numpy.ndarray' object has no attribute 'crop'
>>>>
>>>> According to the docs, Epochs.next() is supposed to return an instance
>>>> of the epochs object, but it doesn't: looking at the code, it actually
>>>> returns something like self._data[self._current].  I would have expected it
>>>> to return something like self.__get_item__(self._current).  So are the docs
>>>> wrong, or is the definition of Epochs.next() implemented wrong?
>>>>
>>>> Daniel McCloy
>>>> http://dan.mccloy.info/
>>>> Postdoctoral Research Associate
>>>> Institute for Learning and Brain Sciences
>>>> University of Washington
>>>>
>>>>
>>>> _______________________________________________
>>>> 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.
>>>>
>>>>
>>>
>>>
>>> --
>>> _____________________________________
>>>
>>> PhD Candidate in Neuroscience | UC Berkeley <http://hwni.org/>
>>> Editor and Web Director | Berkeley Science Review
>>> <http://sciencereview.berkeley.edu/>
>>> _____________________________________
>>>
>>> _______________________________________________
>>> 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.
>>>
>>>
>>
>> _______________________________________________
>> 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.
>>
>>
>
> _______________________________________________
> 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.
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.nmr.mgh.harvard.edu/pipermail/mne_analysis/attachments/20160405/3380c1e9/attachment-0001.html 


More information about the Mne_analysis mailing list