[Eeglablist] Automated way of placing events

Tarik S Bel-Bahar tarikbelbahar at gmail.com
Tue May 15 21:45:22 PDT 2012


Greetings Marco,
this should be straightforward as a script, hope the outline below helps
you generate your own script.
Let us know if you succeed!

1. Make a loop that hunts for the the first, second, etc... instances of
event A that marks the beginning of all trials.
2. Having found the first Event A, find the first Event B (which should be
the start and end of 1 trial, according to you)
3. Take the latency value (in samples or milliseconds), of each of the two
events.
4. Make a list of periods to drop for this trial, which should include the
Time of Event A      and        the Time of Event A + 10Seconds   [this
would be one period to "drop"]
Time of Event B      and        the Time of Event B - 10Seconds   [this
would be the second period to "drop" for that file]
5. Update a list of times with these two sets of start and end values from
Step 4.
6. Continue through the loop, adding to the array that holds the start and
end values for the periods to drop.
7. Add an event if you need it to mark the start of each of your new
"trimmed" trials. For example, the Time of Event A + 10 Seconds + 1 sample
could be the place to put a new marker event for later epoching.
8. Reject the times you have collected.
9. Now Epoch based on other existing events within the trials.


All of the baove you can build by doing a simple example from the GUI, then
using eeg history information to build your own script.

Also,* alternatively,* you *could *be able to also consider an alternative
option,
which simply would mean epoching on Event A,
but setting the times to be  +10 seconds to plus however many seconds after
Event A +10 seconds you want to go.
This would work if your trial time of interest was not too variable, in
other words, if the time
between the first and last ten seconds in each trial were.

As a last point, if you are using ICA, remember that you may be throwing
out data that would be useful for a successful ICA decomposition.



then copying out eegh  (eeg history), and then




On Mon, May 14, 2012 at 2:33 PM, Marco Montalto <montaltomarco at onvol.net>wrote:

> Dear Arno,
>
> I have tried the script you supplied me with but found a problem with it.
> The first part of the script (EEG=pop_select….) treats the data file as one
> continuous dataset; it ignores the events that mark the beginning and end
> of a trial. I would like to remove the first and last ten seconds within
> the boundaries of a trial delimited by the events marking the beginning and
> end of a trial. As it is the script merely removes the first 10 seconds of
> the continuous data and last ten seconds of the same continuous data. Let's
> say A marks beginning of trial 1 and B marks the end of the same trial - I
> would like to remove the first and last 10 seconds within the block marked
> by events A and B. And so on for the rest of trails within the same data
> file. Is this possible? Is there a way of doing this by using some script?
> Any help you could provide me with would be greatly appreciated.
>
> Thanks and regards,
> Marco
>
> On 11 May 2012, at 05:54, Arnaud Delorme wrote:
>
> Hi Marco,
>
> to do what you want to do, you should type in
>
> EEG = pop_select(EEG, 'time', [10 EEG.xmax-10]); % remove the first and
> last 10 seconds
> EEG = eeg_regepoch(EEG, 'recurrence', 2); % divide into 2 seconds
> non-overlaping blocks
>
> Best,
>
> Arno
>
> On May 5, 2012, at 6:38 PM, Stephen Politzer-Ahles wrote:
>
> Hi Marco,
>
> I haven't tried this myself, but you should be able to get any of these
> epochs from the same event using pop_epoch. Assuming that you have an event
> marking the beginning of the block, then the first epoch you want (i.e.
> 10-12 seconds after the event) would be
>
> OUTEEG = pop_epoch( EEG, {events}, [10 12]);
>
> the second would be
>
> OUTEEG = pop_epoch( EEG, {events}, [12 14]);
>
> etc.
>
> Best,
> Steve
>
> On Sat, May 5, 2012 at 4:33 PM, Marco Montalto <montaltomarco at onvol.net>wrote:
>
>> Dear List,
>>
>> In my experiment I have three conditions and each trial is 30 seconds
>> long. I ignore the first and last 10 seconds of each block and the middle
>> 10-second block I divide into epochs of 2-second duration. Currently I am
>> doing this manually through the EEGLAB GUI by placing an event (with the
>> same 'type' for blocks from the same condition) at every two seconds (in
>> the middle 10-second block) and then extracting epochs around those events.
>> Would anyone know whether there is a more automated and a faster way of
>> doing this? Thanks in advance.
>>
>> Regards,
>> Marco Montalto
>> _______________________________________________
>> Eeglablist page: http://sccn.ucsd.edu/eeglab/eeglabmail.html
>> To unsubscribe, send an empty email to
>> eeglablist-unsubscribe at sccn.ucsd.edu
>> For digest mode, send an email with the subject "set digest mime" to
>> eeglablist-request at sccn.ucsd.edu
>>
>
>
>
> --
> Stephen Politzer-Ahles
> University of Kansas
> Linguistics Department
> http://www.linguistics.ku.edu/
> _______________________________________________
> Eeglablist page: http://sccn.ucsd.edu/eeglab/eeglabmail.html
> To unsubscribe, send an empty email to
> eeglablist-unsubscribe at sccn.ucsd.edu
> For digest mode, send an email with the subject "set digest mime" to
> eeglablist-request at sccn.ucsd.edu
>
>
>
>
> _______________________________________________
> Eeglablist page: http://sccn.ucsd.edu/eeglab/eeglabmail.html
> To unsubscribe, send an empty email to
> eeglablist-unsubscribe at sccn.ucsd.edu
> For digest mode, send an email with the subject "set digest mime" to
> eeglablist-request at sccn.ucsd.edu
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://sccn.ucsd.edu/pipermail/eeglablist/attachments/20120515/c9f6b613/attachment.html>


More information about the eeglablist mailing list