<div dir="ltr">hi all,<div><br></div><div>saw this discussion and I'm trying to do something similar from the command line, but no luck.</div><div><br></div><div>I import 63 channel data that I know to be referenced to the forehead. then I remove 3 EOG and EMG channels (60 remaining).</div><div><br></div><div>I've created a 61 channel electrode location file, that I read in and separate into the first 60 "active" locations and the 61st ref/forehead location. I assign the 60 channel locations to my EEG, and then want to rereference to average mastoids, while keeping both mastoid channels and reconstructing the forehead channel. I've tried a couple of things, calling both pop_reref and reref. I'm sure there's a simple solution but can't get it to work. the code to my latest attempt:</div><div><br></div><div>%read in electrode locations</div><div>







<p class="">allchanlocs=readlocs(electrodeFile,<span class="">'filetype'</span>,<span class="">'custom'</span>,<span class="">'format'</span>,{<span class="">'labels'</span> <span class="">'X'</span> <span class="">'Y'</span> <span class="">'Z'</span>});</p>
<p class=""> </p><p class="">%split into active and ref locs</p>
<p class="">chanlocs_active=allchanlocs(1:60);</p>
<p class="">chanlocs_ref=allchanlocs(61);</p>
<p class=""> </p>
<p class="">%read in 63 channel EDF and remove eyes and emg</p>
<p class="">EEG=pop_biosig(fullfile(subjectFolder,dataFile),<span class="">'importevent'</span>,<span class="">'off'</span>);</p>
<p class="">EEG=pop_select(EEG,<span class="">'nochannel'</span>,[1 2 63]);</p>
<p class="">EEG.chanlocs=chanlocs_active;</p>
<p class="">EEG=eeg_checkset(EEG)  ##STILL OK</p><p class=""> </p>
<p class="">%rereference to average mastoids</p>
<p class="">EEG=pop_reref(EEG,[59 60],<span class="">'keepref'</span>,<span class="">'on'</span>,<span class="">'refloc'</span>,chanlocs_ref);</p><p class=""><br></p><p class=""><br></p><p class="">this now crashes like this:</p><p class=""><br></p><p class="">Attempt to reference field of non-structure array.</p><p class=""><br></p><p class="">Error in pop_reref (line 215)</p><p class="">         allinds = [allinds strmatch( g.refloc(iElec).labels, { tmpchaninfo.nodatchans.labels }) ];</p></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Apr 28, 2015 at 5:36 AM, Dezhong Yao <span dir="ltr"><<a href="mailto:dyao@uestc.edu.cn" target="_blank">dyao@uestc.edu.cn</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"> Hi, all reference-issue followers;<br>
  Physically,  "add current reference channel back to data" actually adds a channel with zero potential to current configuration,<br>
then you may re-reference to any other configuration, such average, linked ears reference.<br>
The best re-reference is  the  "zero reference" realized  by "REST" (reference electrode standardization technique) at <a href="http://www.neuro.uestc.edu.cn/rest" target="_blank">www.neuro.uestc.edu.cn/rest</a> , where free-software is available,<br>
and it may interpolate bad channel the same time.<br>
    Best wishes<br>
------------------<br>
Dezhong Yao  PhD<br>
Cheung Kong Professor of Neuroengineering, Neuroimaging<br>
E-mail: <a href="mailto:dyao@uestc.edu.cn">dyao@uestc.edu.cn</a><br>
Fax: 86-28-83208238; Tel: 86-28-83201018<br>
Director, Key Laboratory for NeuroInformation,  Ministry of Education, China<br>
              International Joint Research Center for NeuroInformation, Ministry of Science and Technology, China<br>
Dean,      School of Life Science and Technology, University of Electronic Science and Technology of China, Sichuan,Chengdu 610054, China<br>
Director,  Center for Information in BioMedicine, University of Electronic Science and Technology of China, China<br>
<a href="http://www.neuro.uestc.edu.cn/bci/member/yao/yao.html" target="_blank">http://www.neuro.uestc.edu.cn/bci/member/yao/yao.html</a><br>
2015-04-28<br>
-------------------------------------------------------------<br>
发件人:Brittany Alperin<br>
发送日期:2015-04-28 14:04:07<br>
收件人:Andreas Widmann<br>
抄送:EEGLAB List<br>
主题:Re: [Eeglablist] online reference<br>
<span class=""><br>
Hi Andreas<br>
<br>
You're right. I forgot that compute average reference is automatically<br>
checked, so I was looking at the data with the average reference instead of<br>
a Cz reference.<br>
<br>
I think I have this all cleared up now. Thanks for the help!<br>
<br>
Brittany<br>
<br>
</span>On Sat, Apr 25, 2015 at 9:17 AM, Andreas Widmann <<a href="mailto:widmann@uni-leipzig.de">widmann@uni-leipzig.de</a>><br>
<div class="HOEnZb"><div class="h5">wrote:<br>
<br>
> > To clarify, I have 31 channels + ref (Cz) + ground. So 33 in total.<br>
> Good!<br>
><br>
> > I added Cz to my channel locations and selected "add current reference<br>
> channel back to data" without re-referencing to anything else.<br>
> Sorry, could you please clarify how you use the "add current reference<br>
> channel back to data“-option *without* actually re-referencing? To my<br>
> understanding this should be impossible. Either the „Compute average<br>
> reference“ or the „Re-reference data to channel(s)“-option is always<br>
> selected in the pop_reref GUI. In case „Compute average reference“ was<br>
> selected, the data were re-referenced to the mean of all channels.<br>
><br>
> > I can now see Cz, but it isn't a flat line. Am I incorrect in thinking<br>
> that it should be totally flat?<br>
> Without re-referencing the implicit reference should indeed be a flat<br>
> line/zero.<br>
><br>
> Hope this helps!<br>
> Andreas<br>
><br>
> > Thanks,<br>
> > Brittany<br>
> ><br>
> > On Thu, Apr 23, 2015 at 5:29 AM, Andreas Widmann <<a href="mailto:widmann@uni-leipzig.de">widmann@uni-leipzig.de</a>><br>
> wrote:<br>
> > Hi Brittany,<br>
> ><br>
> > this sounds like two different problems:<br>
> > If you record from 32 channels + Ref + Ground the imported file should<br>
> have 32 channels (but not your Cz Ref channel). Please reconfirm that your<br>
> Pycorder setup really records from 32 data channels (34 electrodes). In<br>
> case there is really a channel missing, please, submit a bug report to the<br>
> bugtracker including a short sample file.<br>
> ><br>
> > If you want to keep the implicit online reference (Cz) as a new channel<br>
> after re-referencing the data to another channel you have to use the „Add<br>
> current reference channel back to the data“-option (GUI; 'refloc‘ on<br>
> command line). To use this option you have to first append a (Cz-) channel<br>
> in the GUI channel editor (appearing in EEG.chaninfo.nodatchans) which you<br>
> can subsequently select during re-referencing. The „new“ Cz-channel is the<br>
> inverse of the channel the data were re-referenced to (now missing in the<br>
> data or being flat if "Retain old reference channels in data“ was selected).<br>
> ><br>
> > Please note that the „Add current reference channel back to the<br>
> data“-option should not be used for systems where common mode rejection is<br>
> applied offline (e.g. Biosemi).<br>
> ><br>
> > Hope this helps,<br>
> > Andreas<br>
> ><br>
> > > Am 22.04.2015 um 21:59 schrieb Brittany Alperin <<a href="mailto:balperin07@gmail.com">balperin07@gmail.com</a><br>
> >:<br>
> > ><br>
> > > Hello<br>
> > ><br>
> > > I'm using a 32 channel brain vision system and am recording with<br>
> PyCorder. When I import my data using the brain vision recorder plugin,<br>
> only 31 channels are present. I'm recording with Cz as an online reference<br>
> and Cz is the channel that is missing. I can re-reference, but Cz is still<br>
> absent.<br>
> > ><br>
> > > Has anyone had an issue with recording with an online reference and<br>
> not having that data import into EEGlab? Or does anyone have a different<br>
> way to import brain vision data?<br>
> > ><br>
> > > Thanks,<br>
> > > Brittany<br>
> > ><br>
> > ><br>
> > > _______________________________________________<br>
> > > Eeglablist page: <a href="http://sccn.ucsd.edu/eeglab/eeglabmail.html" target="_blank">http://sccn.ucsd.edu/eeglab/eeglabmail.html</a><br>
> > > To unsubscribe, send an empty email to<br>
> <a href="mailto:eeglablist-unsubscribe@sccn.ucsd.edu">eeglablist-unsubscribe@sccn.ucsd.edu</a><br>
> > > For digest mode, send an email with the subject "set digest mime" to<br>
> <a href="mailto:eeglablist-request@sccn.ucsd.edu">eeglablist-request@sccn.ucsd.edu</a><br>
> ><br>
> ><br>
><br>
><br>
<br>
_______________________________________________<br>
Eeglablist page: <a href="http://sccn.ucsd.edu/eeglab/eeglabmail.html" target="_blank">http://sccn.ucsd.edu/eeglab/eeglabmail.html</a><br>
To unsubscribe, send an empty email to <a href="mailto:eeglablist-unsubscribe@sccn.ucsd.edu">eeglablist-unsubscribe@sccn.ucsd.edu</a><br>
For digest mode, send an email with the subject "set digest mime" to <a href="mailto:eeglablist-request@sccn.ucsd.edu">eeglablist-request@sccn.ucsd.edu</a><br>
_______________________________________________<br>
Eeglablist page: <a href="http://sccn.ucsd.edu/eeglab/eeglabmail.html" target="_blank">http://sccn.ucsd.edu/eeglab/eeglabmail.html</a><br>
To unsubscribe, send an empty email to <a href="mailto:eeglablist-unsubscribe@sccn.ucsd.edu">eeglablist-unsubscribe@sccn.ucsd.edu</a><br>
For digest mode, send an email with the subject "set digest mime" to <a href="mailto:eeglablist-request@sccn.ucsd.edu">eeglablist-request@sccn.ucsd.edu</a></div></div></blockquote></div><br></div>