<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 class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div lang="EN-MY"><div class="gmail-m_1841609037058667885WordSection1"><p style="margin:0cm 0cm 0.0001pt">My understanding of downsampling is that it is an operation to decrease the sample rate of x by keeping the first sample and then every nth sample after the first.</p></div></div></blockquote><div><br></div><div>Resampling typically consists of two steps: low-pass filtering to avoid aliasing, then sample rate reduction (subselecting samples from the resulting signal). The low-passing actually changes the values, so the subselection-of-filtered-data step will not necessarily yield points that were &quot;on&quot; the original signal.</div><div>¬†</div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div lang="EN-MY"><div class="gmail-m_1841609037058667885WordSection1"><p style="margin:0cm 0cm 0.0001pt"><u></u><u></u></p><p style="margin:0cm 0cm 0.0001pt">May I know whether this issue is due to the ringing artifacts or due to other problems?<br></p></div></div></blockquote><div><br></div><div>In this case it&#39;s likely due to the (implicit) low-pass filtering in the frequency-domain resampling of the signal. It looks pretty reasonable to me. If you want to play around with it a bit, you can</div><div><br></div><div>1. Call scipy.signal.resample directly on your data and see how closely it matches.</div><div>2. Pad your signal, call scipy.signal.resample, and remove the (now reduced-length) padding -- this is what MNE does internally.</div><div>3. Use scipy.signal.resample_poly directly on your data.</div><div>4. Manually low-pass filter and then directly subselect samples from the low-passed signal,¬†which is what resample_poly does internally.</div><div><br></div><div>Hopefully these all give similar results for your signal(s).</div><div><br></div><div>Eric</div><div><br></div></div></div>