<p><span style="padding: 3px 10px; border-radius: 5px; color: #ffffff; font-weight: bold; display: inline-block; background-color: #ff0000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;External Email - Use Caution&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span></p><p></p><div dir="ltr"><div dir="ltr">Dear 

Dan McCloy

</div><div dir="ltr"><br></div><div dir="ltr">Thank you very much for the response.</div><div dir="ltr"><br></div><div dir="ltr">Indeed, after applying your recommendations, my epochs are no longer dropped.</div><div dir="ltr"><br></div><div dir="ltr">Many thanks.</div><div dir="ltr"><br></div><div dir="ltr">Best Regards<br clear="all"><div><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div dir="ltr"><div style="font-size:12.8px"><span style="color:rgb(51,51,51);font-family:&quot;Droid Serif&quot;">A. Ighoyota ben</span></div><div style="font-size:12.8px"><span style="color:rgb(51,51,51);font-family:&quot;Droid Serif&quot;">Junior Researcher HCI (PhD in-view) </span></div><div style="font-size:12.8px"><span style="color:rgb(51,51,51);font-family:&quot;Droid Serif&quot;;font-size:12.8px">Tallinn University, Estonia</span><br></div><div style="font-size:12.8px"><span style="color:rgb(51,51,51);font-family:&quot;Droid Serif&quot;">School of digital Technologies.</span></div></div></div></div></div></div><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, 24 Jul 2020 at 20:54, &lt;<a href="mailto:mne_analysis-request@nmr.mgh.harvard.edu">mne_analysis-request@nmr.mgh.harvard.edu</a>&gt; wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Send Mne_analysis mailing list submissions to<br>
        <a href="mailto:mne_analysis@nmr.mgh.harvard.edu" target="_blank">mne_analysis@nmr.mgh.harvard.edu</a><br>
<br>
To subscribe or unsubscribe via the World Wide Web, visit<br>
        <a href="https://mail.nmr.mgh.harvard.edu/mailman/listinfo/mne_analysis" rel="noreferrer" target="_blank">https://mail.nmr.mgh.harvard.edu/mailman/listinfo/mne_analysis</a><br>
or, via email, send a message with subject or body &#39;help&#39; to<br>
        <a href="mailto:mne_analysis-request@nmr.mgh.harvard.edu" target="_blank">mne_analysis-request@nmr.mgh.harvard.edu</a><br>
<br>
You can reach the person managing the list at<br>
        <a href="mailto:mne_analysis-owner@nmr.mgh.harvard.edu" target="_blank">mne_analysis-owner@nmr.mgh.harvard.edu</a><br>
<br>
When replying, please edit your Subject line so it is more specific<br>
than &quot;Re: Contents of Mne_analysis digest...&quot;<br>
<br>
<br>
Today&#39;s Topics:<br>
<br>
   1. Re: Mne_analysis Digest, Vol 150, Issue 44 (Dan McCloy)<br>
<br>
<br>
----------------------------------------------------------------------<br>
<br>
Message: 1<br>
Date: Fri, 24 Jul 2020 17:52:25 +0000<br>
From: Dan McCloy &lt;<a href="mailto:dan@mccloy.info" target="_blank">dan@mccloy.info</a>&gt;<br>
Subject: Re: [Mne_analysis] Mne_analysis Digest, Vol 150, Issue 44<br>
To: Discussion and support forum for the users of MNE Software<br>
        &lt;<a href="mailto:mne_analysis@nmr.mgh.harvard.edu" target="_blank">mne_analysis@nmr.mgh.harvard.edu</a>&gt;<br>
Message-ID:<br>
        &lt;dRFmRgmbpvIP98vsyaoCX2-mkltYZA9aOR-ecOdDFU7DSjmTymlqZntI79NCy0fzHN0E0ehHRWbl9K50-7CiScMib79Zh5eupoO9T5Tx94g=@<a href="http://mccloy.info" rel="noreferrer" target="_blank">mccloy.info</a>&gt;<br>
<br>
Content-Type: text/plain; charset=&quot;utf-8&quot;<br>
<br>
        External Email - Use Caution        <br>
<br>
It&#39;s hard to know for sure why Epochs are getting dropped because your example code doesn&#39;t include the definition of `dataconv1` (nor `event_id`). However, with your given code you are guaranteed to have the first epoch get dropped, because your call to `make_fixed_length_events` starts at zero, but you&#39;re trying to make epochs with `tmin=-0.2`. If your first event is at time zero, there isn&#39;t any data before that, so the first epoch will always get dropped with error &quot;NO_DATA&quot;. If you change the `start` parameter of `make_fixed_length_events` to be &gt;0.2, that won&#39;t happen.<br>
<br>
Here is a (simplified) version of your code that uses fake data (random numbers); when I run this I see the first epoch dropped because &quot;NO_DATA&quot; and the last epoch dropped because &quot;TOO_SHORT&quot;, but the other 8 epochs in the middle are retained. I skipped defining `picks` (your example was picking all channels, which is the default anyway) and I skipped filtering because I&#39;m using fake data so there&#39;s no way to know from my code whether filtering is influencing the epoch dropping of your real data.<br>
<br>
```<br>
import numpy as np<br>
import mne<br>
rng = np.random.default_rng()<br>
channames = [&#39;Cz&#39;,&#39;Fz&#39;,&#39;C3&#39;,&#39;C4&#39;,&#39;F3&#39;,&#39;F4&#39;,&#39;P7&#39;,&#39;P8&#39;]<br>
ch_types = [&#39;eeg&#39;,&#39;eeg&#39;,&#39;eeg&#39;,&#39;eeg&#39;,&#39;eeg&#39;,&#39;eeg&#39;,&#39;eeg&#39;,&#39;eeg&#39;]<br>
sfreq = 250 # Hz for eeg<br>
# fake data<br>
dataconv1 = rng.normal(size=(len(channames), 40 * sfreq)) # 40 seconds of data<br>
# Create the info structure needed by MNE<br>
info = mne.create_info(ch_names=channames, sfreq=sfreq, ch_types=ch_types)<br>
raw = mne.io.RawArray(dataconv1, info)<br>
evenfile = mne.make_fixed_length_events(raw, id=1, start=0, stop=None,<br>
duration=4.0, first_samp=True,<br>
overlap=0.0)<br>
event_id = dict(foo=1)<br>
epochs = mne.Epochs(raw, evenfile, event_id=event_id, tmin=-0.2, tmax=4,<br>
baseline=(-0.2, 0), event_repeated=&#39;drop&#39;,<br>
proj=False, preload=True, reject_by_annotation=None)<br>
print(epochs.drop_log)<br>
```<br>
<br>
-- dan<br>
Daniel McCloy<br>
<a href="https://dan.mccloy.info" rel="noreferrer" target="_blank">https://dan.mccloy.info</a><br>
Research Scientist<br>
Institute for Learning and Brain Sciences<br>
University of Washington<br>
<br>
??????? Original Message ???????<br>
On Friday, July 24, 2020 5:44 AM, Ben Ighoyota Ajenaghughrure &lt;<a href="mailto:ighoyota@tlu.ee" target="_blank">ighoyota@tlu.ee</a>&gt; wrote:<br>
<br>
&gt; External Email - Use Caution<br>
&gt;<br>
&gt; Dear All,<br>
&gt;<br>
&gt; The response from epochs.drop_log is [[&#39;NO_DATA&#39;]], yet i get the message &quot;1 bad epochs dropped&quot;<br>
&gt;<br>
&gt; Is there anyway to figure out why all my epochs are being dropped?<br>
&gt;<br>
&gt; source code below<br>
&gt; channames = [&#39;Cz&#39;,&#39;Fz&#39;,&#39;C3&#39;,&#39;C4&#39;,&#39;F3&#39;,&#39;F4&#39;,&#39;P7&#39;,&#39;P8&#39;]<br>
&gt; ch_types = [&#39;eeg&#39;,&#39;eeg&#39;,&#39;eeg&#39;,&#39;eeg&#39;,&#39;eeg&#39;,&#39;eeg&#39;,&#39;eeg&#39;,&#39;eeg&#39;]<br>
&gt; # Sampling rate of the Nautilus machine<br>
&gt; sfreq = 250 # Hz for eeg<br>
&gt; # Create the info structure needed by MNE<br>
&gt; info = mne.create_info(ch_names=channames, sfreq=sfreq, ch_types=ch_types)<br>
&gt; raw = mne.io.RawArray(dataconv1, info)<br>
&gt; raw.set_annotations(None)<br>
&gt; raw.del_proj()<br>
&gt; picks =mne.pick_types(<a href="http://raw.info" rel="noreferrer" target="_blank">raw.info</a>, meg=False, eeg=True, stim=True, eog=False,exclude=&#39;bads&#39;)<br>
&gt; raw=raw.filter(0.1, 120, fir_design=&#39;firwin&#39;)<br>
&gt; raw=raw.notch_filter(np.arange(50, 120, 50), picks=picks, filter_length=&#39;auto&#39;, phase=&#39;zero&#39;)<br>
&gt; evenfile=mne.make_fixed_length_events(raw, id=1, start=0, stop=None, duration=4.0, first_samp=True, overlap=0.0)<br>
&gt; epochs = mne.Epochs(raw, evenfile, event_id=event_id, tmin=-0.2, tmax=4, picks=picks, baseline=(-0.2, 0), event_repeated=&#39;drop&#39;,proj=False, preload=True, reject_by_annotation=None)<br>
&gt; print(epochs.drop_log)<br>
&gt; data = epochs.get_data()<br>
&gt;<br>
&gt; A. Ighoyota ben<br>
&gt; Junior Researcher HCI (PhD in-view)<br>
&gt; Tallinn University, Estonia<br>
&gt; School of digital Technologies.<br>
&gt; mobile:[+372582](tel:+372%205832%206393)78794<br>
&gt; skype: ighoyota-ben<br>
&gt;<br>
&gt; On Fri, 24 Jul 2020 at 04:58, &lt;<a href="mailto:mne_analysis-request@nmr.mgh.harvard.edu" target="_blank">mne_analysis-request@nmr.mgh.harvard.edu</a>&gt; wrote:<br>
&gt;<br>
&gt;&gt; Send Mne_analysis mailing list submissions to<br>
&gt;&gt; <a href="mailto:mne_analysis@nmr.mgh.harvard.edu" target="_blank">mne_analysis@nmr.mgh.harvard.edu</a><br>
&gt;&gt;<br>
&gt;&gt; To subscribe or unsubscribe via the World Wide Web, visit<br>
&gt;&gt; <a href="https://mail.nmr.mgh.harvard.edu/mailman/listinfo/mne_analysis" rel="noreferrer" target="_blank">https://mail.nmr.mgh.harvard.edu/mailman/listinfo/mne_analysis</a><br>
&gt;&gt; or, via email, send a message with subject or body &#39;help&#39; to<br>
&gt;&gt; <a href="mailto:mne_analysis-request@nmr.mgh.harvard.edu" target="_blank">mne_analysis-request@nmr.mgh.harvard.edu</a><br>
&gt;&gt;<br>
&gt;&gt; You can reach the person managing the list at<br>
&gt;&gt; <a href="mailto:mne_analysis-owner@nmr.mgh.harvard.edu" target="_blank">mne_analysis-owner@nmr.mgh.harvard.edu</a><br>
&gt;&gt;<br>
&gt;&gt; When replying, please edit your Subject line so it is more specific<br>
&gt;&gt; than &quot;Re: Contents of Mne_analysis digest...&quot;<br>
&gt;&gt;<br>
&gt;&gt; Today&#39;s Topics:<br>
&gt;&gt;<br>
&gt;&gt; 1. Re: epoch dropped problem (Alexandre Gramfort)<br>
&gt;&gt; 2. Re: loading the subject from BRAINSTORM (Alexandre Gramfort)<br>
&gt;&gt; 3. Re: Mne_analysis Digest, Vol 150, Issue 40 (<a href="mailto:balandongiv@gmail.com" target="_blank">balandongiv@gmail.com</a>)<br>
&gt;&gt;<br>
&gt;&gt; ----------------------------------------------------------------------<br>
&gt;&gt;<br>
&gt;&gt; Message: 1<br>
&gt;&gt; Date: Thu, 23 Jul 2020 22:57:00 +0200<br>
&gt;&gt; From: Alexandre Gramfort &lt;<a href="mailto:alexandre.gramfort@inria.fr" target="_blank">alexandre.gramfort@inria.fr</a>&gt;<br>
&gt;&gt; Subject: Re: [Mne_analysis] epoch dropped problem<br>
&gt;&gt; To: Discussion and support forum for the users of MNE Software<br>
&gt;&gt; &lt;<a href="mailto:mne_analysis@nmr.mgh.harvard.edu" target="_blank">mne_analysis@nmr.mgh.harvard.edu</a>&gt;<br>
&gt;&gt; Message-ID:<br>
&gt;&gt; &lt;CADeotZoS51gPzBn+oLTxCnLTgtpGy=<a href="mailto:1DyWrFEnOhfM8Ouuevjg@mail.gmail.com" target="_blank">1DyWrFEnOhfM8Ouuevjg@mail.gmail.com</a>&gt;<br>
&gt;&gt; Content-Type: text/plain; charset=&quot;utf-8&quot;<br>
&gt;&gt;<br>
&gt;&gt; External Email - Use Caution<br>
&gt;&gt;<br>
&gt;&gt; What do epochs.drop_log and epochs.plot_drop_log() give you?<br>
&gt;&gt;<br>
&gt;&gt; Alex<br>
&gt;&gt;<br>
&gt;&gt; ------------------------------<br>
&gt;&gt;<br>
&gt;&gt; Message: 2<br>
&gt;&gt; Date: Thu, 23 Jul 2020 22:58:15 +0200<br>
&gt;&gt; From: Alexandre Gramfort &lt;<a href="mailto:alexandre.gramfort@inria.fr" target="_blank">alexandre.gramfort@inria.fr</a>&gt;<br>
&gt;&gt; Subject: Re: [Mne_analysis] loading the subject from BRAINSTORM<br>
&gt;&gt; To: Discussion and support forum for the users of MNE Software<br>
&gt;&gt; &lt;<a href="mailto:mne_analysis@nmr.mgh.harvard.edu" target="_blank">mne_analysis@nmr.mgh.harvard.edu</a>&gt;<br>
&gt;&gt; Message-ID:<br>
&gt;&gt; &lt;<a href="mailto:CADeotZrjoB0oSOmbXpzESX-_39Dwmqr6VNiSobMqg_043nOD9w@mail.gmail.com" target="_blank">CADeotZrjoB0oSOmbXpzESX-_39Dwmqr6VNiSobMqg_043nOD9w@mail.gmail.com</a>&gt;<br>
&gt;&gt; Content-Type: text/plain; charset=&quot;utf-8&quot;<br>
&gt;&gt;<br>
&gt;&gt; External Email - Use Caution<br>
&gt;&gt;<br>
&gt;&gt; hi,<br>
&gt;&gt;<br>
&gt;&gt; no it&#39;s not that simple as Brainstorm decimates the cortex while MNE<br>
&gt;&gt; subsamples the high resolution mesh.<br>
&gt;&gt;<br>
&gt;&gt; Alex<br>
&gt;&gt;<br>
&gt;&gt; On Thu, Jul 23, 2020 at 4:06 PM Abdallah Qusaibe<br>
&gt;&gt; &lt;<a href="mailto:abdallah.qusaibe@gmail.com" target="_blank">abdallah.qusaibe@gmail.com</a>&gt; wrote:<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; External Email - Use Caution<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Hi All,<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Can we load in mne the subject (inorder to use the cortex mesh) used in Brainstorm,<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Cheers<br>
&gt;&gt;&gt; Abdallah<br>
&gt;&gt;&gt; _______________________________________________<br>
&gt;&gt;&gt; Mne_analysis mailing list<br>
&gt;&gt;&gt; <a href="mailto:Mne_analysis@nmr.mgh.harvard.edu" target="_blank">Mne_analysis@nmr.mgh.harvard.edu</a><br>
&gt;&gt;&gt; <a href="https://mail.nmr.mgh.harvard.edu/mailman/listinfo/mne_analysis" rel="noreferrer" target="_blank">https://mail.nmr.mgh.harvard.edu/mailman/listinfo/mne_analysis</a><br>
&gt;&gt;<br>
&gt;&gt; ------------------------------<br>
&gt;&gt;<br>
&gt;&gt; Message: 3<br>
&gt;&gt; Date: Fri, 24 Jul 2020 09:55:33 +0800<br>
&gt;&gt; From: &lt;<a href="mailto:balandongiv@gmail.com" target="_blank">balandongiv@gmail.com</a>&gt;<br>
&gt;&gt; Subject: Re: [Mne_analysis] Mne_analysis Digest, Vol 150, Issue 40<br>
&gt;&gt; To: &lt;<a href="mailto:mne_analysis@nmr.mgh.harvard.edu" target="_blank">mne_analysis@nmr.mgh.harvard.edu</a>&gt;<br>
&gt;&gt; Message-ID: &lt;004e01d6615d$85632b50$902981f0$@<a href="http://gmail.com" rel="noreferrer" target="_blank">gmail.com</a>&gt;<br>
&gt;&gt; Content-Type: text/plain; charset=&quot;us-ascii&quot;<br>
&gt;&gt;<br>
&gt;&gt; External Email - Use Caution<br>
&gt;&gt;<br>
&gt;&gt; Dear Clemens, Larson, Phillip,<br>
&gt;&gt;<br>
&gt;&gt; Thanks for the detail explanation, really appreciate it.<br>
&gt;&gt;<br>
&gt;&gt; Just a suggestion, maybe part of the discussion can be incorporated<br>
&gt;&gt; somewhere along with mne FAQ or equivalent. This might be helpful,<br>
&gt;&gt; especially to those new in the field.<br>
&gt;&gt;<br>
&gt;&gt; Rodney<br>
&gt;&gt;<br>
&gt;&gt; -----Original Message-----<br>
&gt;&gt; From: <a href="mailto:mne_analysis-bounces@nmr.mgh.harvard.edu" target="_blank">mne_analysis-bounces@nmr.mgh.harvard.edu</a><br>
&gt;&gt; &lt;<a href="mailto:mne_analysis-bounces@nmr.mgh.harvard.edu" target="_blank">mne_analysis-bounces@nmr.mgh.harvard.edu</a>&gt; On Behalf Of<br>
&gt;&gt; <a href="mailto:mne_analysis-request@nmr.mgh.harvard.edu" target="_blank">mne_analysis-request@nmr.mgh.harvard.edu</a><br>
&gt;&gt; Sent: Thursday, 23 July, 2020 9:10 PM<br>
&gt;&gt; To: <a href="mailto:mne_analysis@nmr.mgh.harvard.edu" target="_blank">mne_analysis@nmr.mgh.harvard.edu</a><br>
&gt;&gt; Subject: Mne_analysis Digest, Vol 150, Issue 40<br>
&gt;&gt;<br>
&gt;&gt; Send Mne_analysis mailing list submissions to<br>
&gt;&gt; <a href="mailto:mne_analysis@nmr.mgh.harvard.edu" target="_blank">mne_analysis@nmr.mgh.harvard.edu</a><br>
&gt;&gt;<br>
&gt;&gt; To subscribe or unsubscribe via the World Wide Web, visit<br>
&gt;&gt; <a href="https://mail.nmr.mgh.harvard.edu/mailman/listinfo/mne_analysis" rel="noreferrer" target="_blank">https://mail.nmr.mgh.harvard.edu/mailman/listinfo/mne_analysis</a><br>
&gt;&gt; or, via email, send a message with subject or body &#39;help&#39; to<br>
&gt;&gt; <a href="mailto:mne_analysis-request@nmr.mgh.harvard.edu" target="_blank">mne_analysis-request@nmr.mgh.harvard.edu</a><br>
&gt;&gt;<br>
&gt;&gt; You can reach the person managing the list at<br>
&gt;&gt; <a href="mailto:mne_analysis-owner@nmr.mgh.harvard.edu" target="_blank">mne_analysis-owner@nmr.mgh.harvard.edu</a><br>
&gt;&gt;<br>
&gt;&gt; When replying, please edit your Subject line so it is more specific than<br>
&gt;&gt; &quot;Re: Contents of Mne_analysis digest...&quot;<br>
&gt;&gt;<br>
&gt;&gt; Today&#39;s Topics:<br>
&gt;&gt;<br>
&gt;&gt; 1. Re: Why does MNE resample method does not sample the data<br>
&gt;&gt; point to point? (Eric Larson)<br>
&gt;&gt; 2. Re: Why does MNE resample method does not sample the data<br>
&gt;&gt; point to point? (Brunner, Clemens (<a href="mailto:clemens.brunner@uni-graz.at" target="_blank">clemens.brunner@uni-graz.at</a>))<br>
&gt;&gt; 3. Re: Why does MNE resample method does not sample the data<br>
&gt;&gt; point to point? (Phillip Alday)<br>
&gt;&gt;<br>
&gt;&gt; ----------------------------------------------------------------------<br>
&gt;&gt;<br>
&gt;&gt; Message: 1<br>
&gt;&gt; Date: Thu, 23 Jul 2020 08:40:56 -0400<br>
&gt;&gt; From: Eric Larson &lt;<a href="mailto:larson.eric.d@gmail.com" target="_blank">larson.eric.d@gmail.com</a>&gt;<br>
&gt;&gt; Subject: Re: [Mne_analysis] Why does MNE resample method does not<br>
&gt;&gt; sample the data point to point?<br>
&gt;&gt; To: Discussion and support forum for the users of MNE Software<br>
&gt;&gt; &lt;<a href="mailto:mne_analysis@nmr.mgh.harvard.edu" target="_blank">mne_analysis@nmr.mgh.harvard.edu</a>&gt;<br>
&gt;&gt; Message-ID:<br>
&gt;&gt; &lt;[<a href="mailto:CAGu2niVV%2B79nq5Yu17B4VzB3PS71x7sFTy8HKNukDxnaDdi6hQ@mail.gmail.com" target="_blank">CAGu2niVV+79nq5Yu17B4VzB3PS71x7sFTy8HKNukDxnaDdi6hQ@mail.gmail.com</a>](mailto:<a href="mailto:CAGu2niVV%252B79nq5Yu17B4VzB3PS71x7sFTy8HKNukDxnaDdi6hQ@mail.gmail.com" target="_blank">CAGu2niVV%2B79nq5Yu17B4VzB3PS71x7sFTy8HKNukDxnaDdi6hQ@mail.gmail.com</a>)&gt;<br>
&gt;&gt; Content-Type: text/plain; charset=&quot;utf-8&quot;<br>
&gt;&gt;<br>
&gt;&gt; External Email - Use Caution<br>
&gt;&gt;<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; My understanding of downsampling is that it is an operation to<br>
&gt;&gt;&gt; decrease the sample rate of x by keeping the first sample and then<br>
&gt;&gt;&gt; every nth sample after the first.<br>
&gt;&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; Resampling typically consists of two steps: low-pass filtering to avoid<br>
&gt;&gt; aliasing, then sample rate reduction (subselecting samples from the<br>
&gt;&gt; resulting signal). The low-passing actually changes the values, so the<br>
&gt;&gt; subselection-of-filtered-data step will not necessarily yield points that<br>
&gt;&gt; were &quot;on&quot; the original signal.<br>
&gt;&gt;<br>
&gt;&gt;&gt; May I know whether this issue is due to the ringing artifacts or due<br>
&gt;&gt;&gt; to other problems?<br>
&gt;&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; In this case it&#39;s likely due to the (implicit) low-pass filtering in the<br>
&gt;&gt; frequency-domain resampling of the signal. It looks pretty reasonable to me.<br>
&gt;&gt; If you want to play around with it a bit, you can<br>
&gt;&gt;<br>
&gt;&gt; 1. Call scipy.signal.resample directly on your data and see how closely it<br>
&gt;&gt; matches.<br>
&gt;&gt; 2. Pad your signal, call scipy.signal.resample, and remove the (now<br>
&gt;&gt; reduced-length) padding -- this is what MNE does internally.<br>
&gt;&gt; 3. Use scipy.signal.resample_poly directly on your data.<br>
&gt;&gt; 4. Manually low-pass filter and then directly subselect samples from the<br>
&gt;&gt; low-passed signal, which is what resample_poly does internally.<br>
&gt;&gt;<br>
&gt;&gt; Hopefully these all give similar results for your signal(s).<br>
&gt;&gt;<br>
&gt;&gt; Eric<br>
&gt;&gt; -------------- next part --------------<br>
&gt;&gt; An HTML attachment was scrubbed...<br>
&gt;&gt; URL:<br>
&gt;&gt; [<a href="http://mail.nmr.mgh.harvard.edu/pipermail/mne_analysis/attachments/20200723/" rel="noreferrer" target="_blank">http://mail.nmr.mgh.harvard.edu/pipermail/mne_analysis/attachments/20200723/</a><br>
&gt;&gt; a8812d4e/attachment-0001.html](<a href="http://mail.nmr.mgh.harvard.edu/pipermail/mne_analysis/attachments/20200723/a8812d4e/attachment-0001.html" rel="noreferrer" target="_blank">http://mail.nmr.mgh.harvard.edu/pipermail/mne_analysis/attachments/20200723/a8812d4e/attachment-0001.html</a>)<br>
&gt;&gt;<br>
&gt;&gt; ------------------------------<br>
&gt;&gt;<br>
&gt;&gt; Message: 2<br>
&gt;&gt; Date: Thu, 23 Jul 2020 12:57:29 +0000<br>
&gt;&gt; From: &quot;Brunner, Clemens (<a href="mailto:clemens.brunner@uni-graz.at" target="_blank">clemens.brunner@uni-graz.at</a>)&quot;<br>
&gt;&gt; &lt;<a href="mailto:clemens.brunner@uni-graz.at" target="_blank">clemens.brunner@uni-graz.at</a>&gt;<br>
&gt;&gt; Subject: Re: [Mne_analysis] Why does MNE resample method does not<br>
&gt;&gt; sample the data point to point?<br>
&gt;&gt; To: Discussion and support forum for the users of MNE Software<br>
&gt;&gt; &lt;<a href="mailto:mne_analysis@nmr.mgh.harvard.edu" target="_blank">mne_analysis@nmr.mgh.harvard.edu</a>&gt;<br>
&gt;&gt; Message-ID: &lt;<a href="mailto:21199B34-7BD6-4C1B-81CC-749DFB86E3FC@uni-graz.at" target="_blank">21199B34-7BD6-4C1B-81CC-749DFB86E3FC@uni-graz.at</a>&gt;<br>
&gt;&gt; Content-Type: text/plain; charset=&quot;us-ascii&quot;<br>
&gt;&gt;<br>
&gt;&gt; External Email - Use Caution<br>
&gt;&gt;<br>
&gt;&gt; Also note that the resample example<br>
&gt;&gt; ([<a href="https://docs.scipy.org/doc/scipy/reference/generated/scipy.signal.resample" rel="noreferrer" target="_blank">https://docs.scipy.org/doc/scipy/reference/generated/scipy.signal.resample</a>.<br>
&gt;&gt; html](<a href="https://docs.scipy.org/doc/scipy/reference/generated/scipy.signal.resample.html" rel="noreferrer" target="_blank">https://docs.scipy.org/doc/scipy/reference/generated/scipy.signal.resample.html</a>)) shows upsampling, i.e. the data has a lower sampling rate than the<br>
&gt;&gt; resampled result. However, in the case of downsampling it is usually<br>
&gt;&gt; necessary to avoid aliasing of frequencies above the resampled Nyquist<br>
&gt;&gt; frequency. Therefore, the signal is typically low-pass filtered before the<br>
&gt;&gt; resampling step. As Eric mentioned, this anti-aliasing filter is what<br>
&gt;&gt; actually changes the signal values, but it is necessary to avoid aliasing<br>
&gt;&gt; artifacts.<br>
&gt;&gt;<br>
&gt;&gt; AFAIK, scipy.signal.resample doesn&#39;t include an anti-aliasing filter, but<br>
&gt;&gt; both scipy.signal.resample_poly as well as scipy.signal.decimate apply such<br>
&gt;&gt; a low-pass filter before resampling. That&#39;s also what MNE does.<br>
&gt;&gt;<br>
&gt;&gt; Clemens<br>
&gt;&gt;<br>
&gt;&gt;&gt; On 23.07.2020, at 14:40, Eric Larson &lt;<a href="mailto:larson.eric.d@gmail.com" target="_blank">larson.eric.d@gmail.com</a>&gt; wrote:<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; External Email - Use Caution<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; My understanding of downsampling is that it is an operation to decrease<br>
&gt;&gt; the sample rate of x by keeping the first sample and then every nth sample<br>
&gt;&gt; after the first.<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Resampling typically consists of two steps: low-pass filtering to avoid<br>
&gt;&gt; aliasing, then sample rate reduction (subselecting samples from the<br>
&gt;&gt; resulting signal). The low-passing actually changes the values, so the<br>
&gt;&gt; subselection-of-filtered-data step will not necessarily yield points that<br>
&gt;&gt; were &quot;on&quot; the original signal.<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; May I know whether this issue is due to the ringing artifacts or due to<br>
&gt;&gt; other problems?<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; In this case it&#39;s likely due to the (implicit) low-pass filtering in<br>
&gt;&gt;&gt; the frequency-domain resampling of the signal. It looks pretty<br>
&gt;&gt;&gt; reasonable to me. If you want to play around with it a bit, you can<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; 1. Call scipy.signal.resample directly on your data and see how closely it<br>
&gt;&gt; matches.<br>
&gt;&gt;&gt; 2. Pad your signal, call scipy.signal.resample, and remove the (now<br>
&gt;&gt; reduced-length) padding -- this is what MNE does internally.<br>
&gt;&gt;&gt; 3. Use scipy.signal.resample_poly directly on your data.<br>
&gt;&gt;&gt; 4. Manually low-pass filter and then directly subselect samples from the<br>
&gt;&gt; low-passed signal, which is what resample_poly does internally.<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Hopefully these all give similar results for your signal(s).<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Eric<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; _______________________________________________<br>
&gt;&gt;&gt; Mne_analysis mailing list<br>
&gt;&gt;&gt; <a href="mailto:Mne_analysis@nmr.mgh.harvard.edu" target="_blank">Mne_analysis@nmr.mgh.harvard.edu</a><br>
&gt;&gt;&gt; <a href="https://mail.nmr.mgh.harvard.edu/mailman/listinfo/mne_analysis" rel="noreferrer" target="_blank">https://mail.nmr.mgh.harvard.edu/mailman/listinfo/mne_analysis</a><br>
&gt;&gt;<br>
&gt;&gt; ------------------------------<br>
&gt;&gt;<br>
&gt;&gt; Message: 3<br>
&gt;&gt; Date: Thu, 23 Jul 2020 15:09:44 +0200<br>
&gt;&gt; From: Phillip Alday &lt;<a href="mailto:phillip.alday@mpi.nl" target="_blank">phillip.alday@mpi.nl</a>&gt;<br>
&gt;&gt; Subject: Re: [Mne_analysis] Why does MNE resample method does not<br>
&gt;&gt; sample the data point to point?<br>
&gt;&gt; To: Discussion and support forum for the users of MNE Software<br>
&gt;&gt; &lt;<a href="mailto:mne_analysis@nmr.mgh.harvard.edu" target="_blank">mne_analysis@nmr.mgh.harvard.edu</a>&gt;, &quot;Brunner, Clemens<br>
&gt;&gt; (<a href="mailto:clemens.brunner@uni-graz.at" target="_blank">clemens.brunner@uni-graz.at</a>)&quot; &lt;<a href="mailto:clemens.brunner@uni-graz.at" target="_blank">clemens.brunner@uni-graz.at</a>&gt;<br>
&gt;&gt; Message-ID: &lt;<a href="mailto:16e39842-34bd-465d-9491-b5651302add4@mpi.nl" target="_blank">16e39842-34bd-465d-9491-b5651302add4@mpi.nl</a>&gt;<br>
&gt;&gt; Content-Type: text/plain; charset=&quot;utf-8&quot;<br>
&gt;&gt;<br>
&gt;&gt; External Email - Use Caution<br>
&gt;&gt;<br>
&gt;&gt; I think the up- vs. downsampling distinction is also really important for<br>
&gt;&gt; expectations here, as is the distinction between decimating and resampling<br>
&gt;&gt; (I recall there was a thread about that a few years back with similar<br>
&gt;&gt; confusion, if somebody wants to do the effort of searching for it)<br>
&gt;&gt;<br>
&gt;&gt; Phillip<br>
&gt;&gt;<br>
&gt;&gt; On 23/7/20 2:57 pm, Brunner, Clemens (<a href="mailto:clemens.brunner@uni-graz.at" target="_blank">clemens.brunner@uni-graz.at</a>) wrote:<br>
&gt;&gt;&gt; External Email - Use Caution<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Also note that the resample example<br>
&gt;&gt; ([<a href="https://docs.scipy.org/doc/scipy/reference/generated/scipy.signal.resample" rel="noreferrer" target="_blank">https://docs.scipy.org/doc/scipy/reference/generated/scipy.signal.resample</a>.<br>
&gt;&gt; html](<a href="https://docs.scipy.org/doc/scipy/reference/generated/scipy.signal.resample.html" rel="noreferrer" target="_blank">https://docs.scipy.org/doc/scipy/reference/generated/scipy.signal.resample.html</a>)) shows upsampling, i.e. the data has a lower sampling rate than the<br>
&gt;&gt; resampled result. However, in the case of downsampling it is usually<br>
&gt;&gt; necessary to avoid aliasing of frequencies above the resampled Nyquist<br>
&gt;&gt; frequency. Therefore, the signal is typically low-pass filtered before the<br>
&gt;&gt; resampling step. As Eric mentioned, this anti-aliasing filter is what<br>
&gt;&gt; actually changes the signal values, but it is necessary to avoid aliasing<br>
&gt;&gt; artifacts.<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; AFAIK, scipy.signal.resample doesn&#39;t include an anti-aliasing filter, but<br>
&gt;&gt; both scipy.signal.resample_poly as well as scipy.signal.decimate apply such<br>
&gt;&gt; a low-pass filter before resampling. That&#39;s also what MNE does.<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Clemens<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; On 23.07.2020, at 14:40, Eric Larson &lt;<a href="mailto:larson.eric.d@gmail.com" target="_blank">larson.eric.d@gmail.com</a>&gt; wrote:<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; External Email - Use Caution<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; My understanding of downsampling is that it is an operation to decrease<br>
&gt;&gt; the sample rate of x by keeping the first sample and then every nth sample<br>
&gt;&gt; after the first.<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; Resampling typically consists of two steps: low-pass filtering to avoid<br>
&gt;&gt; aliasing, then sample rate reduction (subselecting samples from the<br>
&gt;&gt; resulting signal). The low-passing actually changes the values, so the<br>
&gt;&gt; subselection-of-filtered-data step will not necessarily yield points that<br>
&gt;&gt; were &quot;on&quot; the original signal.<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; May I know whether this issue is due to the ringing artifacts or due to<br>
&gt;&gt; other problems?<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; In this case it&#39;s likely due to the (implicit) low-pass filtering in<br>
&gt;&gt;&gt;&gt; the frequency-domain resampling of the signal. It looks pretty<br>
&gt;&gt;&gt;&gt; reasonable to me. If you want to play around with it a bit, you can<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; 1. Call scipy.signal.resample directly on your data and see how closely<br>
&gt;&gt; it matches.<br>
&gt;&gt;&gt;&gt; 2. Pad your signal, call scipy.signal.resample, and remove the (now<br>
&gt;&gt; reduced-length) padding -- this is what MNE does internally.<br>
&gt;&gt;&gt;&gt; 3. Use scipy.signal.resample_poly directly on your data.<br>
&gt;&gt;&gt;&gt; 4. Manually low-pass filter and then directly subselect samples from the<br>
&gt;&gt; low-passed signal, which is what resample_poly does internally.<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; Hopefully these all give similar results for your signal(s).<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; Eric<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; _______________________________________________<br>
&gt;&gt;&gt;&gt; Mne_analysis mailing list<br>
&gt;&gt;&gt;&gt; <a href="mailto:Mne_analysis@nmr.mgh.harvard.edu" target="_blank">Mne_analysis@nmr.mgh.harvard.edu</a><br>
&gt;&gt;&gt;&gt; <a href="https://mail.nmr.mgh.harvard.edu/mailman/listinfo/mne_analysis" rel="noreferrer" target="_blank">https://mail.nmr.mgh.harvard.edu/mailman/listinfo/mne_analysis</a><br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; _______________________________________________<br>
&gt;&gt;&gt; Mne_analysis mailing list<br>
&gt;&gt;&gt; <a href="mailto:Mne_analysis@nmr.mgh.harvard.edu" target="_blank">Mne_analysis@nmr.mgh.harvard.edu</a><br>
&gt;&gt;&gt; <a href="https://mail.nmr.mgh.harvard.edu/mailman/listinfo/mne_analysis" rel="noreferrer" target="_blank">https://mail.nmr.mgh.harvard.edu/mailman/listinfo/mne_analysis</a><br>
&gt;&gt;<br>
&gt;&gt; ------------------------------<br>
&gt;&gt;<br>
&gt;&gt; _______________________________________________<br>
&gt;&gt; Mne_analysis mailing list<br>
&gt;&gt; <a href="mailto:Mne_analysis@nmr.mgh.harvard.edu" target="_blank">Mne_analysis@nmr.mgh.harvard.edu</a><br>
&gt;&gt; <a href="https://mail.nmr.mgh.harvard.edu/mailman/listinfo/mne_analysis" rel="noreferrer" target="_blank">https://mail.nmr.mgh.harvard.edu/mailman/listinfo/mne_analysis</a><br>
&gt;&gt;<br>
&gt;&gt; End of Mne_analysis Digest, Vol 150, Issue 40<br>
&gt;&gt; *********************************************<br>
&gt;&gt;<br>
&gt;&gt; ------------------------------<br>
&gt;&gt;<br>
&gt;&gt; _______________________________________________<br>
&gt;&gt; Mne_analysis mailing list<br>
&gt;&gt; <a href="mailto:Mne_analysis@nmr.mgh.harvard.edu" target="_blank">Mne_analysis@nmr.mgh.harvard.edu</a><br>
&gt;&gt; <a href="https://mail.nmr.mgh.harvard.edu/mailman/listinfo/mne_analysis" rel="noreferrer" target="_blank">https://mail.nmr.mgh.harvard.edu/mailman/listinfo/mne_analysis</a><br>
&gt;&gt;<br>
&gt;&gt; End of Mne_analysis Digest, Vol 150, Issue 44<br>
&gt;&gt; *********************************************<br>
-------------- next part --------------<br>
An HTML attachment was scrubbed...<br>
URL: <a href="http://mail.nmr.mgh.harvard.edu/pipermail/mne_analysis/attachments/20200724/b0bc14eb/attachment.html" rel="noreferrer" target="_blank">http://mail.nmr.mgh.harvard.edu/pipermail/mne_analysis/attachments/20200724/b0bc14eb/attachment.html</a> <br>
<br>
------------------------------<br>
<br>
_______________________________________________<br>
Mne_analysis mailing list<br>
<a href="mailto:Mne_analysis@nmr.mgh.harvard.edu" target="_blank">Mne_analysis@nmr.mgh.harvard.edu</a><br>
<a href="https://mail.nmr.mgh.harvard.edu/mailman/listinfo/mne_analysis" rel="noreferrer" target="_blank">https://mail.nmr.mgh.harvard.edu/mailman/listinfo/mne_analysis</a><br>
<br>
End of Mne_analysis Digest, Vol 150, Issue 48<br>
*********************************************<br>
</blockquote></div></div>