From kambiz.tavabi at UNI-MUENSTER.DE Wed Aug 2 12:03:26 2006 From: kambiz.tavabi at UNI-MUENSTER.DE (Kambiz Tavabi) Date: Wed, 2 Aug 2006 12:03:26 +0200 Subject: Dipole modeling & averaged CTF data Message-ID: Dear FieldTrippers, I am relatively ignorant with MATLAB and even more so with FIELDTRIP. With that said I would like to implement ECD modeling with preprocessed averaged CTF MEG data for the evoked gamma auditory response using MNI-aligned grids in individual head-space for the dipole scans. For starting I am beginning with the following example scripts from the FT-Docs; Fit a dipole to the tactile ERF after mechanical stimulation & Create MNI-aligned grids in individual head-space. So far I am facing these issues: (i) Since I am working with averaged data I would like to skip the TIMELOCKANALYSIS, however when I do so I cannot get the butterfly plot of the ERF because I am unable to pass 'time' & 'avg' to plot(1000*avg.time, avg.avg) directly from data.trial:{[274x150 double]} or data.time:{[1x150 double]}, since function 'mtimes' is not defined for values of class 'cell'. (ii) I proceed to use TIMELOCKANALYSIS and obtain the avg structure using... cfg.channel = 'MEG'; cfg.latancy = ['prestim' 'poststim']; cfg.covariance = 'no'; cfg.blcovariance = 'no'; cfg.keeptrials = 'yes'; cfg.normalizevar = 'N'; cfg.removemean = 'no'; cfg.vartrllength = 2; cfg.vartrllength = 2; avg = timelockanalysis(cfg, data); getting the warning Warning: Divide by zero. In timelockanalysis at 536 since I only have one trial. The butterfly plot now looks reasonable. To fit dipoles I use... cfg = []; cfg.latency = [0.045 0.120]; cfg.numdipoles = 2; cfg.symmetry = []; cfg.model='regional'; cfg.hdmfile = 'A0109.hdm'; cfg.feedback = 'textbar'; cfg.resolution = 2; dipeGBR = dipolefitting(cfg, avg); and I get... ??? Error using ==> dipolefitting dipole scanning is only possible for a single dipole or a symmetric dipole pair. From what I understand I am using symmetric dipoles, which is fine to begin with but ultimately I would like to used two regional sources free of the symmetry constraint. What are my options? Thanks for your time. Kambiz -- ============================================ Kambiz Tavabi, Dipl. Psych., MS. Institute for Biomagnetism and Biosignalanalysis Muenster University Hospital Malmedyweg 15 D-48149 Muenster Germany phone: +49-(0)251-83-56884 fax: +49-(0)251-83-56874 e-Mail: Kambiz.Tavabi at uni-muenster.de ============================================ -------------- next part -------------- A non-text attachment was scrubbed... Name: kambiz.tavabi.vcf Type: text/x-vcard Size: 429 bytes Desc: not available URL: From litvak at TX.TECHNION.AC.IL Wed Aug 2 17:39:07 2006 From: litvak at TX.TECHNION.AC.IL (Vladimir Litvak) Date: Wed, 2 Aug 2006 17:39:07 +0200 Subject: International graduate school Wuerzburg, Germany; "Processing of affective stimuli: from the molecular basis to the emotional experience" Message-ID: Dear all, I was asked to forward this for those who might be interested. Vladimir -------------------------------------------------------------------- Dear colleagues The International Graduate School of the University of Würzburg invites applications for 16 fellowships within the PhD program/Research Training Group "Processing of affective stimuli: from the molecular basis to the emotional experience", which is funded by the DFG and will start in Autumn 2006. Fellowships are initially limited to 1.5 years, with the possibility of 1.5 year extension. For more information see the attachments. Yours sincerely Joseph Classen Dr. J. Classen Dept. Neurology University of Wuerzburg Josef-Schneider Str. 11 97080 Wuerzburg Germany Tel. ++49-(0)931-201-23504 Fax. ++49-(0)931-201-23502 -------------- next part -------------- A non-text attachment was scrubbed... Name: Graduate school emotions.doc Type: application/msword Size: 31232 bytes Desc: not available URL: From h.stoegbauer at GMAIL.COM Thu Aug 3 16:22:56 2006 From: h.stoegbauer at GMAIL.COM (Harald Stoegbauer) Date: Thu, 3 Aug 2006 16:22:56 +0200 Subject: channel mismatch Message-ID: Hi, I would like to import tfc-files from BESA (like in the example "Apply clusterrandanalysis on TFRs of power that were computed with BESA"). The problme is that the tfc-files form different subjects have different amount of channels due to artifact rejection. So when I apply freqgrandaverage one get the error: cond1all = freqgrandaverage(cfg, cond1{:}); ??? Subscripted assignment dimension mismatch. Error in ==> freqgrandaverage at 107 Is there a simple way to use only channels which are used in all subjects ? Thanks, Harald From jciveira at UNAV.ES Thu Aug 3 21:08:13 2006 From: jciveira at UNAV.ES (Juan Civeira) Date: Thu, 3 Aug 2006 21:08:13 +0200 Subject: Beamforming Message-ID: Hello all. I am doing sourceanalysis with timelocked data and I had come across with problem that I can not use all the algorithms because there are not all the required functions in the fieldtrip toolbox. I have downloaded the last one but it is the same Does anyone know how to get the following functions or what I have to use instead? - minimumnormestimate.m - residualvariance.m - music.m - loreta.m Thanks Juan From marco.buiatti at GMAIL.COM Fri Aug 4 11:22:06 2006 From: marco.buiatti at GMAIL.COM (Marco Buiatti) Date: Fri, 4 Aug 2006 11:22:06 +0200 Subject: clusterrandanalysis on scalar values + problem with topoplotER Message-ID: Dear FieldTrippers, I am using Cluster Randomization Analysis (CRA) on scalar data and I would like to be sure that the procedure is correct. Results are plausible, but since this is not the canonical use of CRA, I would like to have your feedback. I have 9 subjects, two experimental condition for each subject, and 39 channels. For every subject, channel and condition, I computed an exponent alpha of the power law that better fits the temporal long-range autocorrelations in the data, i.e. a scalar value between 0.5 and 1.5. I transformed the data in a format suitable to CRA by using eeglab2fieldtrip.mto obtain the electrode structure, and by transforming the data structure by hand to mimick the output of the tutorial data, CRA Within-Subjects case. The result for each condition is a structure like this: data1 = label: {39x1 cell} fsample: 500 elec: [1x1 struct] cfg: [1x1 struct] dimord: 'repl_chan_time' individual: [9x39 double] time: 1 I then performed CRA with the following parameters: cfg=[]; cfg.statistic='depsamplesT'; cfg.alphathresh=0.05; cfg.makeclusters='yes'; cfg.minnbchan=2; cfg.neighbourdist=1; cfg.clusterteststat='maxsum'; cfg.onetwo='twosided'; cfg.alpha=0.05; cfg.nranddraws=500; cfg.channel={'all'}; [clusrand]=clusterrandanalysis(cfg,data1,data2); My questions are: 1) Is this procedure correct or are there specific parameters for scalar data? 2) Is there a way to compute the null distribution by considering all possible reassignments of the conditions instead of the Monte Carlo approximation - in this case it would be feasible because all possible reassignments should be 2^9, right? Last point, when I ran the examples on the tutorial data in the Cluster Randomization Analysis section, Within-Subjects case, I found out a little error: clusrand from clusranderfcpFICvsFCorig.mat has two fields with incorrect dimensions that give errors when plotted: stats: [151x1x301 double] raweffect: [151x1x301 double] while they should be stats: [151x301 double] raweffect: [151x301 double] and a problem with plotting (once the little error corrected): I attach the figure that I plotted by following the instructions in the tutorial. I am using Matlab 7 and FieldTrip version 20060731. Can you help me with this? Thank you and have a good day, Marco -- Marco Buiatti - Post Doc ************************************************************** Cognitive Neuroimaging Unit - INSERM U562 Service Hospitalier Frederic Joliot, CEA/DRM/DSV 4 Place du general Leclerc, 91401 Orsay cedex, France Telephone: +33 1 69 86 77 65 Fax: +33 1 69 86 78 16 E-mail: marco.buiatti at gmail.com Web: www.unicog.org *************************************************************** -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: tutorial_clusrand.jpg Type: image/jpeg Size: 35084 bytes Desc: not available URL: From haemmerer at MPIB-BERLIN.MPG.DE Fri Aug 4 11:27:26 2006 From: haemmerer at MPIB-BERLIN.MPG.DE (=?iso-8859-1?Q?H=E4mmerer=2C_Dorothea?=) Date: Fri, 4 Aug 2006 11:27:26 +0200 Subject: read in EEProbe data Message-ID: Hi! I want to read in EEProbe files to work on them with fieldtrip. Is there somebody who has already done that who could tell me which information of what files I shall read in? Thank you! Dorothea -------------- next part -------------- An HTML attachment was scrubbed... URL: From haemmerer at MPIB-BERLIN.MPG.DE Wed Aug 9 17:26:43 2006 From: haemmerer at MPIB-BERLIN.MPG.DE (=?iso-8859-1?Q?H=E4mmerer=2C_Dorothea?=) Date: Wed, 9 Aug 2006 17:26:43 +0200 Subject: read in EEProbe cnts Message-ID: Hi! I am trying to read in EEProbe cnt files. When I use the read_eep_cnt function, I get the following error message: " Invalid MEX-file '\\fieldtrip-20060802\private\read_eep_cnt.dll': Unzulässiger Zugriff auf einen Speicherbereich. " (Unauthorized access to memory) I should add that I am not specifying the begin and end sample of the data. Did anybody of you encounter the same problem? Thank you very much for your reply, Dorothea Hämmerer -------------- next part -------------- An HTML attachment was scrubbed... URL: From MZvyagintsev at UKAACHEN.DE Wed Aug 9 20:14:28 2006 From: MZvyagintsev at UKAACHEN.DE (Mikhail Zvyagintsev) Date: Wed, 9 Aug 2006 20:14:28 +0200 Subject: Beamforming In-Reply-To: <44D2499D.6080502@unav.es> Message-ID: Hi Juan, You are absolutely correct. Some functions still are not included in the current version of Filedtrip. They still need to be tested. I am personally gonna to be a tester for LORETA approach in Fieldtrip. I will not encourage you too much - I still did not start to do this, but at least I promise to do my best. About other routines honestly I don't know. Regards, Mikhail. Juan Civeira wrote: > Hello all. > > I am doing sourceanalysis with timelocked data and I had come across > with problem that I can not use all the algorithms because there are > not all the required functions in the fieldtrip toolbox. I have > downloaded the last one but it is the same > > Does anyone know how to get the following functions or what I have to > use instead? > - minimumnormestimate.m > - residualvariance.m > - music.m > - loreta.m > > Thanks > > Juan > > From MZvyagintsev at UKAACHEN.DE Wed Aug 9 20:36:30 2006 From: MZvyagintsev at UKAACHEN.DE (Mikhail Zvyagintsev) Date: Wed, 9 Aug 2006 20:36:30 +0200 Subject: data filtering in Fieldtrip Message-ID: Dear Robert, I have a question regarding filtering in Fieldtrip. I see, that in example routines you apply quite often 'butter' function. I got a feeling that this is rather a rude approach (I might be wrong). For example, I see that some important information could be lost using it. I am trying to use 'firpmord' function to generate parameters and then 'firpm' for filter design. For filtration 'fltfilt' like you do. They all need Sgnal Processing Toolbox, therefore it should not be a limitaion. What is your opinion about filtering? Thanks in advance, Mikhail. -- __________________________________________________________________ Mikhail Zvyagintsev MD, BSc Klinik für Psychiatrie & Psychotherapie UK Aachen Pauwelsstr. 30 D-52074 Aachen tel +49-0241-80 85580 FAX +49-0241-80 82401 MZvyagintsev at UKAachen.de From c.hesse at FCDONDERS.RU.NL Thu Aug 10 09:53:59 2006 From: c.hesse at FCDONDERS.RU.NL (Christian Hesse) Date: Thu, 10 Aug 2006 09:53:59 +0200 Subject: read in EEProbe cnts In-Reply-To: Message-ID: Hi Dorothea, If you intend to use Fieldtrip for subsequent analysis of your data then if may be a good idea to use the (slightly) higher level reading functions, e.g. read(_fcdc)_data and read(_fccd)_header, since these will return the appropriate data structures. Even if you just want to read the data into an array and do your own stuff, then using the read_data function is a good idea, as it provides a very clean interface for the readers for individual formats. > I am trying to read in EEProbe cnt files. When I use the > read_eep_cnt function, I get the following error message: > > > > „ Invalid MEX-file '\\fieldtrip-20060802\private\read_eep_cnt.dll': > Unzulässiger Zugriff auf einen Speicherbereich. “ (Unauthorized > access to memory) > > > > I should add that I am not specifying the begin and end sample of > the data. Some things to check/try: a) which operating system are your using (WINDOWS/UNIX/MAC)? b) is the DLL where it is supposed to be? c) you should specify begin and end samples for the read_eep_cnt function (note that the read_data function automatically determines what these should be if you don't specify them). Hope this helps. Regards, Christian -------------- next part -------------- An HTML attachment was scrubbed... URL: From j.poort at NIN.KNAW.NL Wed Aug 16 16:59:43 2006 From: j.poort at NIN.KNAW.NL (Jasper Poort) Date: Wed, 16 Aug 2006 16:59:43 +0200 Subject: artifact rejection Message-ID: Hi all, I noticed a problem with artifact viewer: when I perform artifact rejection with cfg.interactive='yes', I get the following error message: ??? Subscript indices must either be real positive integers or logicals. Error in ==> fieldtrip\private\artifact_viewer>read_and_plot at 85 plot(xval(sel), zval(sel), 'b'); Error in ==> fieldtrip\private\artifact_viewer at 41 read_and_plot(h); Error in ==> artifact_zvalue at 254 artifact_viewer(cfg, cfg.artfctdef.zvalue, zsum, artval, zindx); Error in ==> artifact_eog at 126 [tmpcfg, artifact] = artifact_zvalue(tmpcfg); Error in ==> rejectartifact at 197 cfg = feval(sprintf('artifact_%s', cfg.artfctdef.type{type}), cfg); The problem comes from the variable sel that is used for indexing which contains fractions: >> sel = trlpadsmp:(length(data)-trlpadsmp); >> plot(xval(sel), zval(sel), 'b'); cfg.artfctdef.eog.trlpadding default = 0.5 if the sampling frequency is not a nice round number (e.g. 625) >> trlpadsmp = artcfg.trlpadding*hdr.Fs; will result in an error Second, is it possible to reject pieces of data with rejectartifact that are deviant over a group of channels? For example, if I wanted to use the temporal channels to throw out eye blinks, can I specify a group of channels and reject data pieces on the basis of some sort of composite z-score instead of checking data channel by channel? Thanks, greetings Jasper -------------- next part -------------- An HTML attachment was scrubbed... URL: From Lilla.Magyari at FCDONDERS.RU.NL Wed Aug 23 13:38:39 2006 From: Lilla.Magyari at FCDONDERS.RU.NL (Lilla Magyari) Date: Wed, 23 Aug 2006 13:38:39 +0200 Subject: filtering after preprocessing In-Reply-To: <000e01c6b649$ce54f560$bbee19ac@dellgx240> Message-ID: Dear all, One more question. I did event-related averaging with timelockanalysis on MEG data in Fieldtrip and later I computed the planar gradient. However, the results look to be noisy when I plot them. Therefore, I would like to ask if it is possible to filter my data after preprocessing in Fieldtrip (I haven't found any function for filtering separately from the preprocessing function)? Or does filtering work only during preprocessing? Thanks for answers. Best regards, Lilla Magyari From Lilla.Magyari at FCDONDERS.RU.NL Wed Aug 23 13:29:31 2006 From: Lilla.Magyari at FCDONDERS.RU.NL (Lilla Magyari) Date: Wed, 23 Aug 2006 13:29:31 +0200 Subject: clusterrandomizationanalysis on coherence data In-Reply-To: <000e01c6b649$ce54f560$bbee19ac@dellgx240> Message-ID: Dear Fieldtrip users and developers, I would like to evaluate my coherence results with the cluster randomization statistics in Fieldtrip. My data files consisting of powerspctrm and cohspctrm fields, as well (the time-frequency analysis of coherence was calculated with fieldtrip). Therefore, it is not clear for me where or how can I specify for the clusterrandanalysis function that I am interested in the statistics of the coherence spectra and not the power spectra. Or do I have to delete the powspctrm field to make it sure that the clusterrandanalysis function would work on the coherence? And in general, is this the right way of the statistical analysis of my coherence data (which is infact, went through a planar transformation) or should I use another statistics? Thanks for any answer and suggestion in advance. Lilla Magyari From marco.buiatti at GMAIL.COM Wed Aug 23 14:06:58 2006 From: marco.buiatti at GMAIL.COM (Marco Buiatti) Date: Wed, 23 Aug 2006 14:06:58 +0200 Subject: clusterrandanalysis on scalar values + problem with topoplotER In-Reply-To: <22f732b0608040222k799d74ddq765b40858c764006@mail.gmail.com> Message-ID: Dear FieldTrippers, I send this message again, hoping that you can post it this time. Best regards, Marco ---------- Forwarded message ---------- From: Marco Buiatti Date: Aug 4, 2006 11:22 AM Subject: clusterrandanalysis on scalar values + problem with topoplotER To: FIELDTRIP at nic.surfnet.nl Dear FieldTrippers, I am using Cluster Randomization Analysis (CRA) on scalar data and I would like to be sure that the procedure is correct. Results are plausible, but since this is not the canonical use of CRA, I would like to have your feedback. I have 9 subjects, two experimental condition for each subject, and 39 channels. For every subject, channel and condition, I computed an exponent alpha of the power law that better fits the temporal long-range autocorrelations in the data, i.e. a scalar value between 0.5 and 1.5. I transformed the data in a format suitable to CRA by using eeglab2fieldtrip.mto obtain the electrode structure, and by transforming the data structure by hand to mimick the output of the tutorial data, CRA Within-Subjects case. The result for each condition is a structure like this: data1 = label: {39x1 cell} fsample: 500 elec: [1x1 struct] cfg: [1x1 struct] dimord: 'repl_chan_time' individual: [9x39 double] time: 1 I then performed CRA with the following parameters: cfg=[]; cfg.statistic='depsamplesT'; cfg.alphathresh=0.05; cfg.makeclusters='yes'; cfg.minnbchan=2; cfg.neighbourdist=1; cfg.clusterteststat='maxsum'; cfg.onetwo='twosided'; cfg.alpha=0.05; cfg.nranddraws=500; cfg.channel={'all'}; [clusrand]=clusterrandanalysis(cfg,data1,data2); My questions are: 1) Is this procedure correct or are there specific parameters for scalar data? 2) Is there a way to compute the null distribution by considering all possible reassignments of the conditions instead of the Monte Carlo approximation - in this case it would be feasible because all possible reassignments should be 2^9, right? Last point, when I ran the examples on the tutorial data in the Cluster Randomization Analysis section, Within-Subjects case, I found out a little error: clusrand from clusranderfcpFICvsFCorig.mat has two fields with incorrect dimensions that give errors when plotted: stats: [151x1x301 double] raweffect: [151x1x301 double] while they should be stats: [151x301 double] raweffect: [151x301 double] and a problem with plotting (once the little error corrected): I attach the figure that I plotted by following the instructions in the tutorial. I am using Matlab 7 and FieldTrip version 20060731. Can you help me with this? Thank you and have a good day, Marco -- Marco Buiatti - Post Doc ************************************************************** Cognitive Neuroimaging Unit - INSERM U562 Service Hospitalier Frederic Joliot, CEA/DRM/DSV 4 Place du general Leclerc, 91401 Orsay cedex, France Telephone: +33 1 69 86 77 65 Fax: +33 1 69 86 78 16 E-mail: marco.buiatti at gmail.com Web: www.unicog.org *************************************************************** -- Marco Buiatti - Post Doc ************************************************************** Cognitive Neuroimaging Unit - INSERM U562 Service Hospitalier Frederic Joliot, CEA/DRM/DSV 4 Place du general Leclerc, 91401 Orsay cedex, France Telephone: +33 1 69 86 77 65 Fax: +33 1 69 86 78 16 E-mail: marco.buiatti at gmail.com Web: www.unicog.org *************************************************************** -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: tutorial_clusrand.jpg Type: image/jpeg Size: 35084 bytes Desc: not available URL: From maris at NICI.RU.NL Wed Aug 23 14:53:04 2006 From: maris at NICI.RU.NL (Eric Maris) Date: Wed, 23 Aug 2006 14:53:04 +0200 Subject: clusterrandanalysis on scalar values + problem with topoplotER In-Reply-To: <22f732b0608230506t135a9086m6ab82b07c345fe2a@mail.gmail.com> Message-ID: Dear Marco, You have posted this message once before. This was during my holidays, so I did not reply then. When I returned from holidays, I forgot to send you a reply. My apologies for this. I am using Cluster Randomization Analysis (CRA) on scalar data and I would like to be sure that the procedure is correct. Results are plausible, but since this is not the canonical use of CRA, I would like to have your feedback. I have 9 subjects, two experimental condition for each subject, and 39 channels. For every subject, channel and condition, I computed an exponent alpha of the power law that better fits the temporal long-range autocorrelations in the data, i.e. a scalar value between 0.5 and 1.5. I transformed the data in a format suitable to CRA by using eeglab2fieldtrip.m to obtain the electrode structure, and by transforming the data structure by hand to mimick the output of the tutorial data, CRA Within-Subjects case. The result for each condition is a structure like this: data1 = label: {39x1 cell} fsample: 500 elec: [1x1 struct] cfg: [1x1 struct] dimord: 'repl_chan_time' individual: [9x39 double] time: 1 I then performed CRA with the following parameters: cfg=[]; cfg.statistic='depsamplesT'; cfg.alphathresh=0.05; cfg.makeclusters='yes'; cfg.minnbchan=2; cfg.neighbourdist=1; cfg.clusterteststat='maxsum'; cfg.onetwo='twosided'; cfg.alpha=0.05; cfg.nranddraws=500; cfg.channel={'all'}; [clusrand]=clusterrandanalysis(cfg,data1,data2); My questions are: 1) Is this procedure correct or are there specific parameters for scalar data? As far as I can see, this analysis is correct. However, these are not scalar data, because you have observed the EEG on 39 sensors. If you had observed the data on a single sensor only (and a single time point), then the data would have been scalar (i.e., expressible as a single number for every experimental condition). 2) Is there a way to compute the null distribution by considering all possible reassignments of the conditions instead of the Monte Carlo approximation - in this case it would be feasible because all possible reassignments should be 2^9, right? This is not possible with clusterrandanalysis. However, this is possible with one of the new statistics functions in Fieldtrip that will replace both clusterrandanalysis and sourcestatistics. The function of interest for you is timelockstatistics, and you should have a look at the help information for the lower-level function statistics_montecarlo (which is called by timelockstatistics). However, provided that you use more than 500 draws from the permutation distribution, don't expect major changes in the output. Last point, when I ran the examples on the tutorial data in the Cluster Randomization Analysis section, Within-Subjects case, I found out a little error: clusrand from clusranderfcpFICvsFCorig.mat has two fields with incorrect dimensions that give errors when plotted: stats: [151x1x301 double] raweffect: [151x1x301 double] while they should be stats: [151x301 double] raweffect: [151x301 double] Yes, this is an inconvenient format for plotting. I will change it. and a problem with plotting (once the little error corrected): I attach the figure that I plotted by following the instructions in the tutorial. I am using Matlab 7 and FieldTrip version 20060731. Can you help me with this? My hunch is that these strange plotting results are a due to inappropriate limits of the color axis. You should use the same limits for all plots in a series. Also, choose the color limits symmetric around zero. By-the-way, I was surprised to see a time axis in your plots. I thought you only had a spatial dimension. Good luck, Eric Maris -------------- next part -------------- An HTML attachment was scrubbed... URL: From maris at NICI.RU.NL Wed Aug 23 14:59:48 2006 From: maris at NICI.RU.NL (Eric Maris) Date: Wed, 23 Aug 2006 14:59:48 +0200 Subject: clusterrandomizationanalysis on coherence data In-Reply-To: <000001c6c6a7$66d34e00$932dae83@fcdonders.nl> Message-ID: Hi Lilla, > I would like to evaluate my coherence results with the cluster randomization > statistics in Fieldtrip. My data files consisting of powerspctrm and > cohspctrm fields, as well (the time-frequency analysis of coherence was > calculated with fieldtrip). Therefore, it is not clear for me where or how > can I specify for the clusterrandanalysis function that I am interested in > the statistics of the coherence spectra and not the power spectra. Or do I > have to delete the powspctrm field to make it sure that the > clusterrandanalysis function would work on the coherence? > And in general, is this the right way of the statistical analysis of my > coherence data (which is infact, went through a planar transformation) or > should I use another statistics? Statistical testing of coherence differences using cluster-based non-parametric tests are not yet implemented in Fieldtrip. This is one of functionalities that will be added in the near future (i.e., when I have graded the 400 retake-exams of my undergraduate methodology course (-;). Greetings, Eric Maris From marcel.bastiaansen at FCDONDERS.RU.NL Wed Aug 23 16:25:53 2006 From: marcel.bastiaansen at FCDONDERS.RU.NL (Marcel Bastiaansen) Date: Wed, 23 Aug 2006 16:25:53 +0200 Subject: clusterrandomizationanalysis on coherence data In-Reply-To: <001e01c6c6b4$03fd9080$43ccae83@fcdonders.nl> Message-ID: An HTML attachment was scrubbed... URL: From Jan.Schoffelen at FCDONDERS.RU.NL Mon Aug 28 09:50:13 2006 From: Jan.Schoffelen at FCDONDERS.RU.NL (Jan Mathijs Schoffelen) Date: Mon, 28 Aug 2006 09:50:13 +0200 Subject: artifact rejection In-Reply-To: <01bf01c6c144$9ba4bf00$910b57c0@ABSYS> Message-ID: Hoi Jasper, Sorry for the delay, Robert and I have been on a conference. I guess your first problem should be solved easily by trlpadsmp = round(artcfg.trlpadding*hdr.Fs); I will change it in the code (you can do so as well in your local copy). Pretty soon it will show up in the latest download. With regard to your second question: Second, is it possible to reject pieces of data with rejectartifact that are deviant over a group of channels? For example, if I wanted to use the temporal channels to throw out eye blinks, can I specify a group of channels and reject data pieces on the basis of some sort of composite z-score instead of checking data channel by channel? If I am not mistaken, this is exactly the behaviour artifact_muscle is supposed to have. It preprocesses the data according to some cfg (either the default settings, or those that you specify yourself), and computes a pooled-z-score across the channels specified by the cfg (default, or by you). Hope that this helps. Yours, Jan-M -------------- next part -------------- An HTML attachment was scrubbed... URL: From Jan.Schoffelen at FCDONDERS.RU.NL Mon Aug 28 09:55:49 2006 From: Jan.Schoffelen at FCDONDERS.RU.NL (Jan Mathijs Schoffelen) Date: Mon, 28 Aug 2006 09:55:49 +0200 Subject: clusterrandomizationanalysis on coherence data Message-ID: -----Original Message----- From: Jan Mathijs Schoffelen [mailto:jan.schoffelen at fcdonders.ru.nl] Sent: Wednesday, August 23, 2006 6:52 PM To: marcel.bastiaansen at fcdonders.ru.nl Subject: Re: [FIELDTRIP] clusterrandomizationanalysis on coherence data Dear Lilla, Marcel and Eric, it actually is possible to test coherence with the permutation test. in particular, when you consider only one well chosen reference channel it is pretty straightforward (the clustering algorithm then considers clusters of sensors which show an above threshold coherence difference with respect to the reference channel), especially when you use the new statistical functions in fieldtrip (still only for in-house use). i'll be happy to explain it as soon as i'm back from biomag. yours, jan-mathijs ps: it is actually possible to filter your data after you did preprocessing, by specifying the same options in your configuration as you would have done in preprocessing. however, beware of filter-ringing. ----- Original Message ----- From: Marcel Bastiaansen Date: Wednesday, August 23, 2006 7:25 am Subject: Re: [FIELDTRIP] clusterrandomizationanalysis on coherence data From r.oostenveld at FCDONDERS.RU.NL Mon Aug 28 21:43:44 2006 From: r.oostenveld at FCDONDERS.RU.NL (Robert Oostenveld) Date: Mon, 28 Aug 2006 21:43:44 +0200 Subject: back from holiday and Biomag conference Message-ID: Dear FieldTrip users, I was out of office for some time (as you might have noticed). First I was on holiday, and last week I attended the BIOMAG conference in Vancouver. FieldTrip was well appreciated there by the experimentally oriented people. Furthermore, I contacted some methods-oriented researchers who are interested in implementing their ideas in FT. Therefore I do expect some new users of our toolbox, and I also expect that there will be some follow up on the ideas for new developments that we discussed at the Biomag. There is quite a list of questions on the mailing list that has not been answered yet. I will attempt to answer them and/or comment upon them. best regards, Robert From r.oostenveld at FCDONDERS.RU.NL Mon Aug 28 21:48:32 2006 From: r.oostenveld at FCDONDERS.RU.NL (Robert Oostenveld) Date: Mon, 28 Aug 2006 21:48:32 +0200 Subject: artifact rejection In-Reply-To: <00b701c6ca76$98422060$902dae83@fcdonders.nl> Message-ID: Hi Jasper >> Second, is it possible to reject pieces of data with >> rejectartifact that are deviant over a group of channels? For >> example, if I wanted to use the >> temporal channels to throw out eye blinks, can I specify a group >> of channels and reject data pieces on the basis of some sort of >> composite >> z-score instead of checking data channel by channel? > If I am not mistaken, this is exactly the behaviour artifact_muscle > is supposed to have. It preprocesses the data according to some cfg > (either the default settings, or those that you specify yourself), > and computes a pooled-z-score across the channels specified by the > cfg (default, or by you). Just a minor correction: artifact_zvalue can work with multiple channels, and since artifact_zvalue is used both by artifact_muscle and artifact_eog, you can use both the eog and the muscle detection routines to achieve what you want (or call artifact_zvalue directly, in which case you have to specify all settings by hand). The only difference in the eog and muscle detection routines is in the defaults that they have with respect to the preprocessing (filtering etc.). best, Robert From r.oostenveld at FCDONDERS.RU.NL Mon Aug 28 21:54:42 2006 From: r.oostenveld at FCDONDERS.RU.NL (Robert Oostenveld) Date: Mon, 28 Aug 2006 21:54:42 +0200 Subject: filtering after preprocessing In-Reply-To: <000101c6c6a8$ad7e2a90$932dae83@fcdonders.nl> Message-ID: Dear Lilla On 23 Aug 2006, at 13:38, Lilla Magyari wrote: > ...results look to be noisy when I plot them. Therefore, I would > like to ask if > it is possible to filter my data after preprocessing in Fieldtrip > (I haven't > found any function for filtering separately from the preprocessing > function)? Or does filtering work only during preprocessing? You can use timelockanalysis for that. That function has hidden options (i.e. they are not documented if you type "help timelockanalysis", but you can read about them if you open the timelockanalysis funciton in the matlab editor) with exactly the same syntax as preprocessing. With those cfg options you can specify filtering, rereferencing etc. on your already averaged data. Of course you cannot do any filter padding, since that requires the data to be used for the padding to be re-read from file (which is possible during preprocessing, but not during timelockanalysis). So the idea is cfg = ... raw = preprocessing(cfg); cfg = []; avg = timelockanalysis(cfg, raw); cfg = []; cfg.lpfilter = 'yes'; cfg.lpfreq = 30; avg_f = timelockanalysis(cfg, avg); best regards, Robert From r.oostenveld at FCDONDERS.RU.NL Mon Aug 28 22:15:14 2006 From: r.oostenveld at FCDONDERS.RU.NL (Robert Oostenveld) Date: Mon, 28 Aug 2006 22:15:14 +0200 Subject: data filtering in Fieldtrip In-Reply-To: <44DA2B2E.7030508@UKAachen.de> Message-ID: Dear Mikhail On 9 Aug 2006, at 20:36, Mikhail Zvyagintsev wrote: > I have a question regarding filtering in Fieldtrip. I see, that in > example routines you apply quite often 'butter' function. I got a > feeling that this is rather a rude approach (I might be wrong). For > example, I see that some important information could be lost using > it. I am trying to use 'firpmord' function to generate parameters > and then 'firpm' for filter design. For filtration 'fltfilt' like > you do. They all need Sgnal Processing Toolbox, therefore it should > not be a limitaion. What is your opinion about filtering? I do not have strong opinions about filtering. In my formal education (physics) there was little attention spent on filter design, so I also don't know too much about the details. Of course I could say that the reason for choosing a Butterworth as default is that "Butterworth filters are optimal in the sense of having a maximally flat amplitude response, as measured using a Taylor series expansion about dc" but that is something that I just googled for, so that is cheating ;) My reason for implementing a Butterworth as default is that it is easy, seems to be good enough (but that is subjective), and is also pretty standard. The alternative that I also implemented is using the Matlab fir1 function. I did recently make some changes to the low- level filtering code, you may want to download a recent copy from the FTP server and have a look at the lowpassfilter.m function in the fieldtrip/private directory (there is also a highpassfilter etc). It should not be too difficult to add support for other filter types as well, since the cfg-handling and low-level code is designed to handle different filter types. If you feel that it is worth to implement more advanced filter design strategies (like firpm), then I certainly would welcome additions to the code. best regards, Robert P.S. I should also note that at the FC Donders most people that are using FieldTrip are mainly focussed on frequency and time-frequency analyses. That means that we often don't apply any filters to the data at all, but only bandpass-filter the data temporary in order to find artifacts (eog and muscle). The typical ERP people within the FC Donders for whom the filtering would be more relevant still use BrainVision Analyser a lot (although they do import their ERPs into fieldtrip for the final statistics). P.P.S. would you know a good online resource where the difference between various filters is explained in a way that allows the users of FieldTrip to make a better choise in the filter settings? From tomh at KURAGE.NIMH.NIH.GOV Mon Aug 28 22:21:09 2006 From: tomh at KURAGE.NIMH.NIH.GOV (Tom Holroyd (NIH/NIMH) [E]) Date: Mon, 28 Aug 2006 16:21:09 -0400 Subject: William Gaetz is out of the office. In-Reply-To: Message-ID: NARF! William Gaetz wrote: > I will be out of the office starting 28/08/2006 and will not return until > 04/09/2006. > > I will respond to your message when I return. -- Tom Holroyd, Ph.D. We experience the world not as it is, but as we expect it to be. From r.oostenveld at FCDONDERS.RU.NL Mon Aug 28 22:27:02 2006 From: r.oostenveld at FCDONDERS.RU.NL (Robert Oostenveld) Date: Mon, 28 Aug 2006 22:27:02 +0200 Subject: read in EEProbe cnts In-Reply-To: <563D12B4-B4C5-49A3-A4D8-01CE15B0F763@fcdonders.ru.nl> Message-ID: Hi Dorothea, >> „ Invalid MEX-file '\\fieldtrip-20060802\private >> \read_eep_cnt.dll': Unzulässiger Zugriff auf einen >> Speicherbereich. “ (Unauthorized access to memory) >> >> I should add that I am not specifying the begin and end sample of >> the data. Some more comments: the read_eep_cnt mex file consists of a small snippet of c-code that uses a reading function from a c-library from ANT. Although the c-code for the read_eep_cnt fiunction is open source and available (see http://oase.uci.kun.nl/~roberto/index.php/ eeprobe/), the low-level functions in the c-library from ANT are not available. Therefore I cannot fix the functions. Please contact ANT and tell them to fix the problems with the Matlab support of their data format and/or to make an open source version of their library available. In this case, the problem is probably either related to not specifying the begin and end sample of the data segment that you want to read, or is related to imcompatible matlab/mex-file versions. I suggest that you follow up on Christians suggestions. You could also try reading the data from begsample 1 to endsample 1 (i.e. one sample, which should be in the file always). best Robert From r.oostenveld at FCDONDERS.RU.NL Mon Aug 28 23:20:21 2006 From: r.oostenveld at FCDONDERS.RU.NL (Robert Oostenveld) Date: Mon, 28 Aug 2006 23:20:21 +0200 Subject: read in EEProbe data In-Reply-To: Message-ID: Hi Dorothea On 4 Aug 2006, at 11:27, Hämmerer, Dorothea wrote: > I want to read in EEProbe files to work on them with fieldtrip. > > Is there somebody who has already done that who could tell me which > information of what files I shall read in? One comment on a more general level: in fieldtrip you do not have to do something specifically to read data in the EEProbe format. You can just follow the tutorial examples and documentation, and replace the datafile by yours (of course triggers will be different). The FieldTrip reading functions will automatically detect that it is EEProbe format, and use the appropriate low-level functions. So the functions that you really should be looking at are DEFINETRIAL and PREPROCESSING. I have added an example matlab script that demonstrates how to get started with fieldtrip and read data into matlab. You can find it at http://www2.ru.nl/fcdonders/fieldtrip/doku.php? id=fieldtrip:documentation:getting_started_with_reading_raw_eeg_or_meg_d ata In your case just replace the filename with your cnt file. best regards, Robert From r.oostenveld at FCDONDERS.RU.NL Tue Aug 29 16:59:16 2006 From: r.oostenveld at FCDONDERS.RU.NL (Robert Oostenveld) Date: Tue, 29 Aug 2006 16:59:16 +0200 Subject: channel mismatch In-Reply-To: Message-ID: Hi Harald, On 3 Aug 2006, at 16:22, Harald Stoegbauer wrote: > The problme is that the tfc-files form different subjects have > different > amount of channels due to artifact rejection. > ... > Is there a simple way to use only channels which are used in all > subjects ? All Fieldtrip functions in principle should support datasets with different input channels (i.e. only selecting the overlapping channels), but it seems that that is not yet supported in the FREQGRANDAVERAGE function. I have fixed that and will include the updated version in the FTP release tonight. thanks for reporting this bug Robert From r.oostenveld at FCDONDERS.RU.NL Tue Aug 29 23:46:25 2006 From: r.oostenveld at FCDONDERS.RU.NL (Robert Oostenveld) Date: Tue, 29 Aug 2006 23:46:25 +0200 Subject: clusterrandanalysis on scalar values + problem with topoplotER In-Reply-To: <001601c6c6b3$130506e0$43ccae83@fcdonders.nl> Message-ID: Dear Marco On 23 Aug 2006, at 14:53, Eric Maris wrote: >> 2) Is there a way to compute the null distribution by considering >> all possible reassignments of the conditions instead of the Monte >> Carlo approximation - in this case it would be feasible because >> all possible reassignments should be 2^9, right? > This is not possible with clusterrandanalysis. However, this is > possible with one of the new statistics functions in Fieldtrip that > will replace both clusterrandanalysis and sourcestatistics. The > function of interest for you is timelockstatistics, and you should > have a look at the help information for the lower-level function > statistics_montecarlo (which is called by timelockstatistics). > However, provided that you use more than 500 draws from the > permutation distribution, don’t expect major changes in the output. We have an in-house version of fieldtrip, and an external FTP version. The in-house version is always slightly more advanced than the external version. Even though the timelockstatistics function was already included in recent external fieldtrip versions (the daily zip files) on the Donders FTP server, I just noticed that the underlying statistics_montecarlo function that Eric is referring to was still missing from the zip file. I have now also tagged that function (and some further subfunctions on which it depends) to be released in the external fieldtrip release. You should be able to use the timelockstatistics function with both the montecarlo and the complete permutation (cfg.numrandomization='all') based estimaes for the cluster statistics. I hope it works with the new function, if not then don't hesitate to contact us. Robert From P.PRAAMSTRA at BHAM.AC.UK Wed Aug 30 13:19:31 2006 From: P.PRAAMSTRA at BHAM.AC.UK (Dr Peter Praamstra) Date: Wed, 30 Aug 2006 12:19:31 +0100 Subject: tfc timecourse In-Reply-To: Message-ID: Hi Robert, you helpfully suggested how I can extract the timecourse of activity in a given freq band from TFC representations: > Doe maar > plot(freq.freq, '.') > en lees de index van de beta frequentie af (index=nummer staat langs > x-as, de fysieke frequentie langs y-as). Het freq.freq veld > beschrijft de frequentie as in de data (net als freq.time en > freq.label de twee andere assen beschrijven). > Vervolgens kun je > plot(freq.time, freq.powspctrm(chanindx, freqindx, :)) % voor 1 > kanaal, of > plot(freq.time, freq.powspctrm( :, freqindx, :)) % voor > alle kanalen > doen en krijg je power (vertikaal) tegen tijd (horizontaal). > Alternatief kun je natuurlijk ook naar > plot(freq.time, sqrt(freq.powspctrm(chanindx, freqindx, :))) > kijken voor de absolute amplitude in plaats van power (sqrt(pow) > =amplitude). However, freq and freq.freq seem to be undefined variables. Is that due to the TFCs being imported from BESA rather than generated in FT? If so, any suggestions as to how else to proceed? (know this is trivial for proficient matlab users, but possibly relevant for other BESA/FT users). wirh best wishes, Peter Praamstra From marie at PSY.GLA.AC.UK Wed Aug 30 15:06:30 2006 From: marie at PSY.GLA.AC.UK (Marie Smith) Date: Wed, 30 Aug 2006 14:06:30 +0100 Subject: Postdoctoral Research Assistant position Message-ID: UNIVERSITY OF GLASGOW CENTRE FOR COGNITIVE NEURO IMAGING DEPARTMENT OF PSYCHOLOGY Postdoctoral Research Assistant £25633 - £31525 per annum REF #12426/DPF/A3 Applications are invited for a Postdoctoral Research Assistant to work with Professor Philippe Schyns, Dr Klaus Kessler and Dr Marie Smith on a BBSRC funded project ‘Cortical Networks for Flexible Organisations’, which is aimed at providing a flow-chart of information processing within the cortical networks associated with the integration of facial features during face categorisation tasks, such as gender and expression. Under the guidance of the grant holders you will have the opportunity to: contribute to the design of event-related MEG experiments; collect the data with a state of the art MEG system; apply cutting edge techniques to analyse brain signals in the time and frequency domain; solve the inverse problem in order to identify processing networks; and reverse correlate brain activity with facial features. Finally, this will also give you the opportunity to practice your skills in writing scientific articles for high impact journals. For three years you will be part of a successful team of researchers in Glasgow who work on this and related topics. This post is available from 1 October 2006. You will be qualified, with a PhD, or equivalent, in cognitive neuroscience or a related discipline. You will also have experience of running psychophysical, cognitive and brainimaging experiments, with experience in MEG and/or EEG date collection and analysis. You will have excellent programming skills, particularly with MATLAB and will be experienced in image processing, signal analysis in the time and frequency domain, the inverse-problem and beamforming / source localisation methods. Finally you should have a strong interest in pursuing a research career. Informal enquiries may be made to Professor P Schyns, (+44 (0)141 330 4937; p.schyns at psy.gla.ac.uk Dr Klaus Kessler (+44 (0)141 330 4774; k.kessler at psy.gla.ac.uk) or Dr Marie Smith (+44 (0)141 330 3987; m.smith at psy.gla.ac.uk). For further details about the post and how to apply: see our web site at http://www.psy.gla.ac.uk/jobs.php or contact Ms Lynsay McGinlay, Department of Psychology, University of Glasgow, G12 8QQ (+44 (0)141 330 3986, e-mail l.mcginlay at psy.gla.ac.uk or the University web site at www.gla.ac.uk Closing Date : September 21st 2006 -------------- next part -------------- An HTML attachment was scrubbed... URL: From r.oostenveld at FCDONDERS.RU.NL Thu Aug 31 21:07:11 2006 From: r.oostenveld at FCDONDERS.RU.NL (Robert Oostenveld) Date: Thu, 31 Aug 2006 21:07:11 +0200 Subject: tfc timecourse In-Reply-To: <44F58253.16835.C429F3@P.PRAAMSTRA.Bham.ac.uk> Message-ID: On 30 Aug 2006, at 13:19, Dr Peter Praamstra wrote: > However, freq and freq.freq seem to be undefined variables. Is that > due to the TFCs being > imported from BESA rather than generated in FT? If so, any > suggestions as to how else to > proceed? > > (know this is trivial for proficient matlab users, but possibly > relevant for other BESA/FT > users). Hi Peter, In the documentation and in demo scripts I always use "freq" to indicate a data structure that contains frequence decomposed data (i.e. the output of freqanalysis in FT). The variable that I indicated with "freq" could be called differently in your Matlab session. From the FT-BESA documentation at http://www2.ru.nl/ fcdonders/fieldtrip/doku.php? id=fieldtrip:documentation:integrating_with_besa > For example, you can read in event-related potential data using > > timelock = besa2fieldtrip('filename.avr'); > > or a time-frequency estimate of power using > > freq = besa2fieldtrip('filename.tfc'); I hope this helps, Robert From r.oostenveld at FCDONDERS.RU.NL Thu Aug 31 22:33:51 2006 From: r.oostenveld at FCDONDERS.RU.NL (Robert Oostenveld) Date: Thu, 31 Aug 2006 22:33:51 +0200 Subject: Filtering In-Reply-To: <1157032724.44f6eb14e9662@webmail.technion.ac.il> Message-ID: Hi Vladimir, On 31 Aug 2006, at 15:58, litvak at techunix.technion.ac.il wrote: > Another question I have (you may post the answer to the list or put > it in the > FAQ if you want) is how do I translate from BESA filter settings > (like 6 db/Oct > or 12 db/Oct) to filter order in FT? I took a DSP course a couple > of years ago > but all memory of this faded by now. The filter order for the Butterworth filter (filttype='but') is different from that of the FIR filters. For the Butterworth, you can look here (http://www.answers.com/topic/butterworth-filter#after_ad2) for full details. Furthermore, in the Matlab signal processing toolbox you can also find a filter design tool (a.o.). Type "help butter" and "help butord" on the command line for more background. Furthermore, on thefieldtrip website -> documentation -> example scripts -> at the bottom you will see http://www2.ru.nl/fcdonders/fieldtrip/doku.php? id=fieldtrip:documentation:determine_the_filter_characteristics which gives you some hands on tricks to determine it yourself. The frequency response plots can be compared to the figs on the external website: to translate the frequency response (expressed as power, not amplitude) to decibel -> 10^-0.3 = -3 dB, and in general 10^-x = -10*x dB. best Robert P.S. note that a Nst order filter applied in both directions (cfg.XXfiltdir='twopass') effectively corresponds to an 2xNth order filter, since you filter twice. P.P.S. to summarise: "4th order"+"twopass" (which are the defaults) corresponds to 2x4x6 = 48dB/octave, so that is pretty steep. From kambiz.tavabi at UNI-MUENSTER.DE Wed Aug 2 12:03:26 2006 From: kambiz.tavabi at UNI-MUENSTER.DE (Kambiz Tavabi) Date: Wed, 2 Aug 2006 12:03:26 +0200 Subject: Dipole modeling & averaged CTF data Message-ID: Dear FieldTrippers, I am relatively ignorant with MATLAB and even more so with FIELDTRIP. With that said I would like to implement ECD modeling with preprocessed averaged CTF MEG data for the evoked gamma auditory response using MNI-aligned grids in individual head-space for the dipole scans. For starting I am beginning with the following example scripts from the FT-Docs; Fit a dipole to the tactile ERF after mechanical stimulation & Create MNI-aligned grids in individual head-space. So far I am facing these issues: (i) Since I am working with averaged data I would like to skip the TIMELOCKANALYSIS, however when I do so I cannot get the butterfly plot of the ERF because I am unable to pass 'time' & 'avg' to plot(1000*avg.time, avg.avg) directly from data.trial:{[274x150 double]} or data.time:{[1x150 double]}, since function 'mtimes' is not defined for values of class 'cell'. (ii) I proceed to use TIMELOCKANALYSIS and obtain the avg structure using... cfg.channel = 'MEG'; cfg.latancy = ['prestim' 'poststim']; cfg.covariance = 'no'; cfg.blcovariance = 'no'; cfg.keeptrials = 'yes'; cfg.normalizevar = 'N'; cfg.removemean = 'no'; cfg.vartrllength = 2; cfg.vartrllength = 2; avg = timelockanalysis(cfg, data); getting the warning Warning: Divide by zero. In timelockanalysis at 536 since I only have one trial. The butterfly plot now looks reasonable. To fit dipoles I use... cfg = []; cfg.latency = [0.045 0.120]; cfg.numdipoles = 2; cfg.symmetry = []; cfg.model='regional'; cfg.hdmfile = 'A0109.hdm'; cfg.feedback = 'textbar'; cfg.resolution = 2; dipeGBR = dipolefitting(cfg, avg); and I get... ??? Error using ==> dipolefitting dipole scanning is only possible for a single dipole or a symmetric dipole pair. From what I understand I am using symmetric dipoles, which is fine to begin with but ultimately I would like to used two regional sources free of the symmetry constraint. What are my options? Thanks for your time. Kambiz -- ============================================ Kambiz Tavabi, Dipl. Psych., MS. Institute for Biomagnetism and Biosignalanalysis Muenster University Hospital Malmedyweg 15 D-48149 Muenster Germany phone: +49-(0)251-83-56884 fax: +49-(0)251-83-56874 e-Mail: Kambiz.Tavabi at uni-muenster.de ============================================ -------------- next part -------------- A non-text attachment was scrubbed... Name: kambiz.tavabi.vcf Type: text/x-vcard Size: 429 bytes Desc: not available URL: From litvak at TX.TECHNION.AC.IL Wed Aug 2 17:39:07 2006 From: litvak at TX.TECHNION.AC.IL (Vladimir Litvak) Date: Wed, 2 Aug 2006 17:39:07 +0200 Subject: International graduate school Wuerzburg, Germany; "Processing of affective stimuli: from the molecular basis to the emotional experience" Message-ID: Dear all, I was asked to forward this for those who might be interested. Vladimir -------------------------------------------------------------------- Dear colleagues The International Graduate School of the University of Würzburg invites applications for 16 fellowships within the PhD program/Research Training Group "Processing of affective stimuli: from the molecular basis to the emotional experience", which is funded by the DFG and will start in Autumn 2006. Fellowships are initially limited to 1.5 years, with the possibility of 1.5 year extension. For more information see the attachments. Yours sincerely Joseph Classen Dr. J. Classen Dept. Neurology University of Wuerzburg Josef-Schneider Str. 11 97080 Wuerzburg Germany Tel. ++49-(0)931-201-23504 Fax. ++49-(0)931-201-23502 -------------- next part -------------- A non-text attachment was scrubbed... Name: Graduate school emotions.doc Type: application/msword Size: 31232 bytes Desc: not available URL: From h.stoegbauer at GMAIL.COM Thu Aug 3 16:22:56 2006 From: h.stoegbauer at GMAIL.COM (Harald Stoegbauer) Date: Thu, 3 Aug 2006 16:22:56 +0200 Subject: channel mismatch Message-ID: Hi, I would like to import tfc-files from BESA (like in the example "Apply clusterrandanalysis on TFRs of power that were computed with BESA"). The problme is that the tfc-files form different subjects have different amount of channels due to artifact rejection. So when I apply freqgrandaverage one get the error: cond1all = freqgrandaverage(cfg, cond1{:}); ??? Subscripted assignment dimension mismatch. Error in ==> freqgrandaverage at 107 Is there a simple way to use only channels which are used in all subjects ? Thanks, Harald From jciveira at UNAV.ES Thu Aug 3 21:08:13 2006 From: jciveira at UNAV.ES (Juan Civeira) Date: Thu, 3 Aug 2006 21:08:13 +0200 Subject: Beamforming Message-ID: Hello all. I am doing sourceanalysis with timelocked data and I had come across with problem that I can not use all the algorithms because there are not all the required functions in the fieldtrip toolbox. I have downloaded the last one but it is the same Does anyone know how to get the following functions or what I have to use instead? - minimumnormestimate.m - residualvariance.m - music.m - loreta.m Thanks Juan From marco.buiatti at GMAIL.COM Fri Aug 4 11:22:06 2006 From: marco.buiatti at GMAIL.COM (Marco Buiatti) Date: Fri, 4 Aug 2006 11:22:06 +0200 Subject: clusterrandanalysis on scalar values + problem with topoplotER Message-ID: Dear FieldTrippers, I am using Cluster Randomization Analysis (CRA) on scalar data and I would like to be sure that the procedure is correct. Results are plausible, but since this is not the canonical use of CRA, I would like to have your feedback. I have 9 subjects, two experimental condition for each subject, and 39 channels. For every subject, channel and condition, I computed an exponent alpha of the power law that better fits the temporal long-range autocorrelations in the data, i.e. a scalar value between 0.5 and 1.5. I transformed the data in a format suitable to CRA by using eeglab2fieldtrip.mto obtain the electrode structure, and by transforming the data structure by hand to mimick the output of the tutorial data, CRA Within-Subjects case. The result for each condition is a structure like this: data1 = label: {39x1 cell} fsample: 500 elec: [1x1 struct] cfg: [1x1 struct] dimord: 'repl_chan_time' individual: [9x39 double] time: 1 I then performed CRA with the following parameters: cfg=[]; cfg.statistic='depsamplesT'; cfg.alphathresh=0.05; cfg.makeclusters='yes'; cfg.minnbchan=2; cfg.neighbourdist=1; cfg.clusterteststat='maxsum'; cfg.onetwo='twosided'; cfg.alpha=0.05; cfg.nranddraws=500; cfg.channel={'all'}; [clusrand]=clusterrandanalysis(cfg,data1,data2); My questions are: 1) Is this procedure correct or are there specific parameters for scalar data? 2) Is there a way to compute the null distribution by considering all possible reassignments of the conditions instead of the Monte Carlo approximation - in this case it would be feasible because all possible reassignments should be 2^9, right? Last point, when I ran the examples on the tutorial data in the Cluster Randomization Analysis section, Within-Subjects case, I found out a little error: clusrand from clusranderfcpFICvsFCorig.mat has two fields with incorrect dimensions that give errors when plotted: stats: [151x1x301 double] raweffect: [151x1x301 double] while they should be stats: [151x301 double] raweffect: [151x301 double] and a problem with plotting (once the little error corrected): I attach the figure that I plotted by following the instructions in the tutorial. I am using Matlab 7 and FieldTrip version 20060731. Can you help me with this? Thank you and have a good day, Marco -- Marco Buiatti - Post Doc ************************************************************** Cognitive Neuroimaging Unit - INSERM U562 Service Hospitalier Frederic Joliot, CEA/DRM/DSV 4 Place du general Leclerc, 91401 Orsay cedex, France Telephone: +33 1 69 86 77 65 Fax: +33 1 69 86 78 16 E-mail: marco.buiatti at gmail.com Web: www.unicog.org *************************************************************** -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: tutorial_clusrand.jpg Type: image/jpeg Size: 35084 bytes Desc: not available URL: From haemmerer at MPIB-BERLIN.MPG.DE Fri Aug 4 11:27:26 2006 From: haemmerer at MPIB-BERLIN.MPG.DE (=?iso-8859-1?Q?H=E4mmerer=2C_Dorothea?=) Date: Fri, 4 Aug 2006 11:27:26 +0200 Subject: read in EEProbe data Message-ID: Hi! I want to read in EEProbe files to work on them with fieldtrip. Is there somebody who has already done that who could tell me which information of what files I shall read in? Thank you! Dorothea -------------- next part -------------- An HTML attachment was scrubbed... URL: From haemmerer at MPIB-BERLIN.MPG.DE Wed Aug 9 17:26:43 2006 From: haemmerer at MPIB-BERLIN.MPG.DE (=?iso-8859-1?Q?H=E4mmerer=2C_Dorothea?=) Date: Wed, 9 Aug 2006 17:26:43 +0200 Subject: read in EEProbe cnts Message-ID: Hi! I am trying to read in EEProbe cnt files. When I use the read_eep_cnt function, I get the following error message: " Invalid MEX-file '\\fieldtrip-20060802\private\read_eep_cnt.dll': Unzulässiger Zugriff auf einen Speicherbereich. " (Unauthorized access to memory) I should add that I am not specifying the begin and end sample of the data. Did anybody of you encounter the same problem? Thank you very much for your reply, Dorothea Hämmerer -------------- next part -------------- An HTML attachment was scrubbed... URL: From MZvyagintsev at UKAACHEN.DE Wed Aug 9 20:14:28 2006 From: MZvyagintsev at UKAACHEN.DE (Mikhail Zvyagintsev) Date: Wed, 9 Aug 2006 20:14:28 +0200 Subject: Beamforming In-Reply-To: <44D2499D.6080502@unav.es> Message-ID: Hi Juan, You are absolutely correct. Some functions still are not included in the current version of Filedtrip. They still need to be tested. I am personally gonna to be a tester for LORETA approach in Fieldtrip. I will not encourage you too much - I still did not start to do this, but at least I promise to do my best. About other routines honestly I don't know. Regards, Mikhail. Juan Civeira wrote: > Hello all. > > I am doing sourceanalysis with timelocked data and I had come across > with problem that I can not use all the algorithms because there are > not all the required functions in the fieldtrip toolbox. I have > downloaded the last one but it is the same > > Does anyone know how to get the following functions or what I have to > use instead? > - minimumnormestimate.m > - residualvariance.m > - music.m > - loreta.m > > Thanks > > Juan > > From MZvyagintsev at UKAACHEN.DE Wed Aug 9 20:36:30 2006 From: MZvyagintsev at UKAACHEN.DE (Mikhail Zvyagintsev) Date: Wed, 9 Aug 2006 20:36:30 +0200 Subject: data filtering in Fieldtrip Message-ID: Dear Robert, I have a question regarding filtering in Fieldtrip. I see, that in example routines you apply quite often 'butter' function. I got a feeling that this is rather a rude approach (I might be wrong). For example, I see that some important information could be lost using it. I am trying to use 'firpmord' function to generate parameters and then 'firpm' for filter design. For filtration 'fltfilt' like you do. They all need Sgnal Processing Toolbox, therefore it should not be a limitaion. What is your opinion about filtering? Thanks in advance, Mikhail. -- __________________________________________________________________ Mikhail Zvyagintsev MD, BSc Klinik für Psychiatrie & Psychotherapie UK Aachen Pauwelsstr. 30 D-52074 Aachen tel +49-0241-80 85580 FAX +49-0241-80 82401 MZvyagintsev at UKAachen.de From c.hesse at FCDONDERS.RU.NL Thu Aug 10 09:53:59 2006 From: c.hesse at FCDONDERS.RU.NL (Christian Hesse) Date: Thu, 10 Aug 2006 09:53:59 +0200 Subject: read in EEProbe cnts In-Reply-To: Message-ID: Hi Dorothea, If you intend to use Fieldtrip for subsequent analysis of your data then if may be a good idea to use the (slightly) higher level reading functions, e.g. read(_fcdc)_data and read(_fccd)_header, since these will return the appropriate data structures. Even if you just want to read the data into an array and do your own stuff, then using the read_data function is a good idea, as it provides a very clean interface for the readers for individual formats. > I am trying to read in EEProbe cnt files. When I use the > read_eep_cnt function, I get the following error message: > > > > „ Invalid MEX-file '\\fieldtrip-20060802\private\read_eep_cnt.dll': > Unzulässiger Zugriff auf einen Speicherbereich. “ (Unauthorized > access to memory) > > > > I should add that I am not specifying the begin and end sample of > the data. Some things to check/try: a) which operating system are your using (WINDOWS/UNIX/MAC)? b) is the DLL where it is supposed to be? c) you should specify begin and end samples for the read_eep_cnt function (note that the read_data function automatically determines what these should be if you don't specify them). Hope this helps. Regards, Christian -------------- next part -------------- An HTML attachment was scrubbed... URL: From j.poort at NIN.KNAW.NL Wed Aug 16 16:59:43 2006 From: j.poort at NIN.KNAW.NL (Jasper Poort) Date: Wed, 16 Aug 2006 16:59:43 +0200 Subject: artifact rejection Message-ID: Hi all, I noticed a problem with artifact viewer: when I perform artifact rejection with cfg.interactive='yes', I get the following error message: ??? Subscript indices must either be real positive integers or logicals. Error in ==> fieldtrip\private\artifact_viewer>read_and_plot at 85 plot(xval(sel), zval(sel), 'b'); Error in ==> fieldtrip\private\artifact_viewer at 41 read_and_plot(h); Error in ==> artifact_zvalue at 254 artifact_viewer(cfg, cfg.artfctdef.zvalue, zsum, artval, zindx); Error in ==> artifact_eog at 126 [tmpcfg, artifact] = artifact_zvalue(tmpcfg); Error in ==> rejectartifact at 197 cfg = feval(sprintf('artifact_%s', cfg.artfctdef.type{type}), cfg); The problem comes from the variable sel that is used for indexing which contains fractions: >> sel = trlpadsmp:(length(data)-trlpadsmp); >> plot(xval(sel), zval(sel), 'b'); cfg.artfctdef.eog.trlpadding default = 0.5 if the sampling frequency is not a nice round number (e.g. 625) >> trlpadsmp = artcfg.trlpadding*hdr.Fs; will result in an error Second, is it possible to reject pieces of data with rejectartifact that are deviant over a group of channels? For example, if I wanted to use the temporal channels to throw out eye blinks, can I specify a group of channels and reject data pieces on the basis of some sort of composite z-score instead of checking data channel by channel? Thanks, greetings Jasper -------------- next part -------------- An HTML attachment was scrubbed... URL: From Lilla.Magyari at FCDONDERS.RU.NL Wed Aug 23 13:38:39 2006 From: Lilla.Magyari at FCDONDERS.RU.NL (Lilla Magyari) Date: Wed, 23 Aug 2006 13:38:39 +0200 Subject: filtering after preprocessing In-Reply-To: <000e01c6b649$ce54f560$bbee19ac@dellgx240> Message-ID: Dear all, One more question. I did event-related averaging with timelockanalysis on MEG data in Fieldtrip and later I computed the planar gradient. However, the results look to be noisy when I plot them. Therefore, I would like to ask if it is possible to filter my data after preprocessing in Fieldtrip (I haven't found any function for filtering separately from the preprocessing function)? Or does filtering work only during preprocessing? Thanks for answers. Best regards, Lilla Magyari From Lilla.Magyari at FCDONDERS.RU.NL Wed Aug 23 13:29:31 2006 From: Lilla.Magyari at FCDONDERS.RU.NL (Lilla Magyari) Date: Wed, 23 Aug 2006 13:29:31 +0200 Subject: clusterrandomizationanalysis on coherence data In-Reply-To: <000e01c6b649$ce54f560$bbee19ac@dellgx240> Message-ID: Dear Fieldtrip users and developers, I would like to evaluate my coherence results with the cluster randomization statistics in Fieldtrip. My data files consisting of powerspctrm and cohspctrm fields, as well (the time-frequency analysis of coherence was calculated with fieldtrip). Therefore, it is not clear for me where or how can I specify for the clusterrandanalysis function that I am interested in the statistics of the coherence spectra and not the power spectra. Or do I have to delete the powspctrm field to make it sure that the clusterrandanalysis function would work on the coherence? And in general, is this the right way of the statistical analysis of my coherence data (which is infact, went through a planar transformation) or should I use another statistics? Thanks for any answer and suggestion in advance. Lilla Magyari From marco.buiatti at GMAIL.COM Wed Aug 23 14:06:58 2006 From: marco.buiatti at GMAIL.COM (Marco Buiatti) Date: Wed, 23 Aug 2006 14:06:58 +0200 Subject: clusterrandanalysis on scalar values + problem with topoplotER In-Reply-To: <22f732b0608040222k799d74ddq765b40858c764006@mail.gmail.com> Message-ID: Dear FieldTrippers, I send this message again, hoping that you can post it this time. Best regards, Marco ---------- Forwarded message ---------- From: Marco Buiatti Date: Aug 4, 2006 11:22 AM Subject: clusterrandanalysis on scalar values + problem with topoplotER To: FIELDTRIP at nic.surfnet.nl Dear FieldTrippers, I am using Cluster Randomization Analysis (CRA) on scalar data and I would like to be sure that the procedure is correct. Results are plausible, but since this is not the canonical use of CRA, I would like to have your feedback. I have 9 subjects, two experimental condition for each subject, and 39 channels. For every subject, channel and condition, I computed an exponent alpha of the power law that better fits the temporal long-range autocorrelations in the data, i.e. a scalar value between 0.5 and 1.5. I transformed the data in a format suitable to CRA by using eeglab2fieldtrip.mto obtain the electrode structure, and by transforming the data structure by hand to mimick the output of the tutorial data, CRA Within-Subjects case. The result for each condition is a structure like this: data1 = label: {39x1 cell} fsample: 500 elec: [1x1 struct] cfg: [1x1 struct] dimord: 'repl_chan_time' individual: [9x39 double] time: 1 I then performed CRA with the following parameters: cfg=[]; cfg.statistic='depsamplesT'; cfg.alphathresh=0.05; cfg.makeclusters='yes'; cfg.minnbchan=2; cfg.neighbourdist=1; cfg.clusterteststat='maxsum'; cfg.onetwo='twosided'; cfg.alpha=0.05; cfg.nranddraws=500; cfg.channel={'all'}; [clusrand]=clusterrandanalysis(cfg,data1,data2); My questions are: 1) Is this procedure correct or are there specific parameters for scalar data? 2) Is there a way to compute the null distribution by considering all possible reassignments of the conditions instead of the Monte Carlo approximation - in this case it would be feasible because all possible reassignments should be 2^9, right? Last point, when I ran the examples on the tutorial data in the Cluster Randomization Analysis section, Within-Subjects case, I found out a little error: clusrand from clusranderfcpFICvsFCorig.mat has two fields with incorrect dimensions that give errors when plotted: stats: [151x1x301 double] raweffect: [151x1x301 double] while they should be stats: [151x301 double] raweffect: [151x301 double] and a problem with plotting (once the little error corrected): I attach the figure that I plotted by following the instructions in the tutorial. I am using Matlab 7 and FieldTrip version 20060731. Can you help me with this? Thank you and have a good day, Marco -- Marco Buiatti - Post Doc ************************************************************** Cognitive Neuroimaging Unit - INSERM U562 Service Hospitalier Frederic Joliot, CEA/DRM/DSV 4 Place du general Leclerc, 91401 Orsay cedex, France Telephone: +33 1 69 86 77 65 Fax: +33 1 69 86 78 16 E-mail: marco.buiatti at gmail.com Web: www.unicog.org *************************************************************** -- Marco Buiatti - Post Doc ************************************************************** Cognitive Neuroimaging Unit - INSERM U562 Service Hospitalier Frederic Joliot, CEA/DRM/DSV 4 Place du general Leclerc, 91401 Orsay cedex, France Telephone: +33 1 69 86 77 65 Fax: +33 1 69 86 78 16 E-mail: marco.buiatti at gmail.com Web: www.unicog.org *************************************************************** -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: tutorial_clusrand.jpg Type: image/jpeg Size: 35084 bytes Desc: not available URL: From maris at NICI.RU.NL Wed Aug 23 14:53:04 2006 From: maris at NICI.RU.NL (Eric Maris) Date: Wed, 23 Aug 2006 14:53:04 +0200 Subject: clusterrandanalysis on scalar values + problem with topoplotER In-Reply-To: <22f732b0608230506t135a9086m6ab82b07c345fe2a@mail.gmail.com> Message-ID: Dear Marco, You have posted this message once before. This was during my holidays, so I did not reply then. When I returned from holidays, I forgot to send you a reply. My apologies for this. I am using Cluster Randomization Analysis (CRA) on scalar data and I would like to be sure that the procedure is correct. Results are plausible, but since this is not the canonical use of CRA, I would like to have your feedback. I have 9 subjects, two experimental condition for each subject, and 39 channels. For every subject, channel and condition, I computed an exponent alpha of the power law that better fits the temporal long-range autocorrelations in the data, i.e. a scalar value between 0.5 and 1.5. I transformed the data in a format suitable to CRA by using eeglab2fieldtrip.m to obtain the electrode structure, and by transforming the data structure by hand to mimick the output of the tutorial data, CRA Within-Subjects case. The result for each condition is a structure like this: data1 = label: {39x1 cell} fsample: 500 elec: [1x1 struct] cfg: [1x1 struct] dimord: 'repl_chan_time' individual: [9x39 double] time: 1 I then performed CRA with the following parameters: cfg=[]; cfg.statistic='depsamplesT'; cfg.alphathresh=0.05; cfg.makeclusters='yes'; cfg.minnbchan=2; cfg.neighbourdist=1; cfg.clusterteststat='maxsum'; cfg.onetwo='twosided'; cfg.alpha=0.05; cfg.nranddraws=500; cfg.channel={'all'}; [clusrand]=clusterrandanalysis(cfg,data1,data2); My questions are: 1) Is this procedure correct or are there specific parameters for scalar data? As far as I can see, this analysis is correct. However, these are not scalar data, because you have observed the EEG on 39 sensors. If you had observed the data on a single sensor only (and a single time point), then the data would have been scalar (i.e., expressible as a single number for every experimental condition). 2) Is there a way to compute the null distribution by considering all possible reassignments of the conditions instead of the Monte Carlo approximation - in this case it would be feasible because all possible reassignments should be 2^9, right? This is not possible with clusterrandanalysis. However, this is possible with one of the new statistics functions in Fieldtrip that will replace both clusterrandanalysis and sourcestatistics. The function of interest for you is timelockstatistics, and you should have a look at the help information for the lower-level function statistics_montecarlo (which is called by timelockstatistics). However, provided that you use more than 500 draws from the permutation distribution, don't expect major changes in the output. Last point, when I ran the examples on the tutorial data in the Cluster Randomization Analysis section, Within-Subjects case, I found out a little error: clusrand from clusranderfcpFICvsFCorig.mat has two fields with incorrect dimensions that give errors when plotted: stats: [151x1x301 double] raweffect: [151x1x301 double] while they should be stats: [151x301 double] raweffect: [151x301 double] Yes, this is an inconvenient format for plotting. I will change it. and a problem with plotting (once the little error corrected): I attach the figure that I plotted by following the instructions in the tutorial. I am using Matlab 7 and FieldTrip version 20060731. Can you help me with this? My hunch is that these strange plotting results are a due to inappropriate limits of the color axis. You should use the same limits for all plots in a series. Also, choose the color limits symmetric around zero. By-the-way, I was surprised to see a time axis in your plots. I thought you only had a spatial dimension. Good luck, Eric Maris -------------- next part -------------- An HTML attachment was scrubbed... URL: From maris at NICI.RU.NL Wed Aug 23 14:59:48 2006 From: maris at NICI.RU.NL (Eric Maris) Date: Wed, 23 Aug 2006 14:59:48 +0200 Subject: clusterrandomizationanalysis on coherence data In-Reply-To: <000001c6c6a7$66d34e00$932dae83@fcdonders.nl> Message-ID: Hi Lilla, > I would like to evaluate my coherence results with the cluster randomization > statistics in Fieldtrip. My data files consisting of powerspctrm and > cohspctrm fields, as well (the time-frequency analysis of coherence was > calculated with fieldtrip). Therefore, it is not clear for me where or how > can I specify for the clusterrandanalysis function that I am interested in > the statistics of the coherence spectra and not the power spectra. Or do I > have to delete the powspctrm field to make it sure that the > clusterrandanalysis function would work on the coherence? > And in general, is this the right way of the statistical analysis of my > coherence data (which is infact, went through a planar transformation) or > should I use another statistics? Statistical testing of coherence differences using cluster-based non-parametric tests are not yet implemented in Fieldtrip. This is one of functionalities that will be added in the near future (i.e., when I have graded the 400 retake-exams of my undergraduate methodology course (-;). Greetings, Eric Maris From marcel.bastiaansen at FCDONDERS.RU.NL Wed Aug 23 16:25:53 2006 From: marcel.bastiaansen at FCDONDERS.RU.NL (Marcel Bastiaansen) Date: Wed, 23 Aug 2006 16:25:53 +0200 Subject: clusterrandomizationanalysis on coherence data In-Reply-To: <001e01c6c6b4$03fd9080$43ccae83@fcdonders.nl> Message-ID: An HTML attachment was scrubbed... URL: From Jan.Schoffelen at FCDONDERS.RU.NL Mon Aug 28 09:50:13 2006 From: Jan.Schoffelen at FCDONDERS.RU.NL (Jan Mathijs Schoffelen) Date: Mon, 28 Aug 2006 09:50:13 +0200 Subject: artifact rejection In-Reply-To: <01bf01c6c144$9ba4bf00$910b57c0@ABSYS> Message-ID: Hoi Jasper, Sorry for the delay, Robert and I have been on a conference. I guess your first problem should be solved easily by trlpadsmp = round(artcfg.trlpadding*hdr.Fs); I will change it in the code (you can do so as well in your local copy). Pretty soon it will show up in the latest download. With regard to your second question: Second, is it possible to reject pieces of data with rejectartifact that are deviant over a group of channels? For example, if I wanted to use the temporal channels to throw out eye blinks, can I specify a group of channels and reject data pieces on the basis of some sort of composite z-score instead of checking data channel by channel? If I am not mistaken, this is exactly the behaviour artifact_muscle is supposed to have. It preprocesses the data according to some cfg (either the default settings, or those that you specify yourself), and computes a pooled-z-score across the channels specified by the cfg (default, or by you). Hope that this helps. Yours, Jan-M -------------- next part -------------- An HTML attachment was scrubbed... URL: From Jan.Schoffelen at FCDONDERS.RU.NL Mon Aug 28 09:55:49 2006 From: Jan.Schoffelen at FCDONDERS.RU.NL (Jan Mathijs Schoffelen) Date: Mon, 28 Aug 2006 09:55:49 +0200 Subject: clusterrandomizationanalysis on coherence data Message-ID: -----Original Message----- From: Jan Mathijs Schoffelen [mailto:jan.schoffelen at fcdonders.ru.nl] Sent: Wednesday, August 23, 2006 6:52 PM To: marcel.bastiaansen at fcdonders.ru.nl Subject: Re: [FIELDTRIP] clusterrandomizationanalysis on coherence data Dear Lilla, Marcel and Eric, it actually is possible to test coherence with the permutation test. in particular, when you consider only one well chosen reference channel it is pretty straightforward (the clustering algorithm then considers clusters of sensors which show an above threshold coherence difference with respect to the reference channel), especially when you use the new statistical functions in fieldtrip (still only for in-house use). i'll be happy to explain it as soon as i'm back from biomag. yours, jan-mathijs ps: it is actually possible to filter your data after you did preprocessing, by specifying the same options in your configuration as you would have done in preprocessing. however, beware of filter-ringing. ----- Original Message ----- From: Marcel Bastiaansen Date: Wednesday, August 23, 2006 7:25 am Subject: Re: [FIELDTRIP] clusterrandomizationanalysis on coherence data From r.oostenveld at FCDONDERS.RU.NL Mon Aug 28 21:43:44 2006 From: r.oostenveld at FCDONDERS.RU.NL (Robert Oostenveld) Date: Mon, 28 Aug 2006 21:43:44 +0200 Subject: back from holiday and Biomag conference Message-ID: Dear FieldTrip users, I was out of office for some time (as you might have noticed). First I was on holiday, and last week I attended the BIOMAG conference in Vancouver. FieldTrip was well appreciated there by the experimentally oriented people. Furthermore, I contacted some methods-oriented researchers who are interested in implementing their ideas in FT. Therefore I do expect some new users of our toolbox, and I also expect that there will be some follow up on the ideas for new developments that we discussed at the Biomag. There is quite a list of questions on the mailing list that has not been answered yet. I will attempt to answer them and/or comment upon them. best regards, Robert From r.oostenveld at FCDONDERS.RU.NL Mon Aug 28 21:48:32 2006 From: r.oostenveld at FCDONDERS.RU.NL (Robert Oostenveld) Date: Mon, 28 Aug 2006 21:48:32 +0200 Subject: artifact rejection In-Reply-To: <00b701c6ca76$98422060$902dae83@fcdonders.nl> Message-ID: Hi Jasper >> Second, is it possible to reject pieces of data with >> rejectartifact that are deviant over a group of channels? For >> example, if I wanted to use the >> temporal channels to throw out eye blinks, can I specify a group >> of channels and reject data pieces on the basis of some sort of >> composite >> z-score instead of checking data channel by channel? > If I am not mistaken, this is exactly the behaviour artifact_muscle > is supposed to have. It preprocesses the data according to some cfg > (either the default settings, or those that you specify yourself), > and computes a pooled-z-score across the channels specified by the > cfg (default, or by you). Just a minor correction: artifact_zvalue can work with multiple channels, and since artifact_zvalue is used both by artifact_muscle and artifact_eog, you can use both the eog and the muscle detection routines to achieve what you want (or call artifact_zvalue directly, in which case you have to specify all settings by hand). The only difference in the eog and muscle detection routines is in the defaults that they have with respect to the preprocessing (filtering etc.). best, Robert From r.oostenveld at FCDONDERS.RU.NL Mon Aug 28 21:54:42 2006 From: r.oostenveld at FCDONDERS.RU.NL (Robert Oostenveld) Date: Mon, 28 Aug 2006 21:54:42 +0200 Subject: filtering after preprocessing In-Reply-To: <000101c6c6a8$ad7e2a90$932dae83@fcdonders.nl> Message-ID: Dear Lilla On 23 Aug 2006, at 13:38, Lilla Magyari wrote: > ...results look to be noisy when I plot them. Therefore, I would > like to ask if > it is possible to filter my data after preprocessing in Fieldtrip > (I haven't > found any function for filtering separately from the preprocessing > function)? Or does filtering work only during preprocessing? You can use timelockanalysis for that. That function has hidden options (i.e. they are not documented if you type "help timelockanalysis", but you can read about them if you open the timelockanalysis funciton in the matlab editor) with exactly the same syntax as preprocessing. With those cfg options you can specify filtering, rereferencing etc. on your already averaged data. Of course you cannot do any filter padding, since that requires the data to be used for the padding to be re-read from file (which is possible during preprocessing, but not during timelockanalysis). So the idea is cfg = ... raw = preprocessing(cfg); cfg = []; avg = timelockanalysis(cfg, raw); cfg = []; cfg.lpfilter = 'yes'; cfg.lpfreq = 30; avg_f = timelockanalysis(cfg, avg); best regards, Robert From r.oostenveld at FCDONDERS.RU.NL Mon Aug 28 22:15:14 2006 From: r.oostenveld at FCDONDERS.RU.NL (Robert Oostenveld) Date: Mon, 28 Aug 2006 22:15:14 +0200 Subject: data filtering in Fieldtrip In-Reply-To: <44DA2B2E.7030508@UKAachen.de> Message-ID: Dear Mikhail On 9 Aug 2006, at 20:36, Mikhail Zvyagintsev wrote: > I have a question regarding filtering in Fieldtrip. I see, that in > example routines you apply quite often 'butter' function. I got a > feeling that this is rather a rude approach (I might be wrong). For > example, I see that some important information could be lost using > it. I am trying to use 'firpmord' function to generate parameters > and then 'firpm' for filter design. For filtration 'fltfilt' like > you do. They all need Sgnal Processing Toolbox, therefore it should > not be a limitaion. What is your opinion about filtering? I do not have strong opinions about filtering. In my formal education (physics) there was little attention spent on filter design, so I also don't know too much about the details. Of course I could say that the reason for choosing a Butterworth as default is that "Butterworth filters are optimal in the sense of having a maximally flat amplitude response, as measured using a Taylor series expansion about dc" but that is something that I just googled for, so that is cheating ;) My reason for implementing a Butterworth as default is that it is easy, seems to be good enough (but that is subjective), and is also pretty standard. The alternative that I also implemented is using the Matlab fir1 function. I did recently make some changes to the low- level filtering code, you may want to download a recent copy from the FTP server and have a look at the lowpassfilter.m function in the fieldtrip/private directory (there is also a highpassfilter etc). It should not be too difficult to add support for other filter types as well, since the cfg-handling and low-level code is designed to handle different filter types. If you feel that it is worth to implement more advanced filter design strategies (like firpm), then I certainly would welcome additions to the code. best regards, Robert P.S. I should also note that at the FC Donders most people that are using FieldTrip are mainly focussed on frequency and time-frequency analyses. That means that we often don't apply any filters to the data at all, but only bandpass-filter the data temporary in order to find artifacts (eog and muscle). The typical ERP people within the FC Donders for whom the filtering would be more relevant still use BrainVision Analyser a lot (although they do import their ERPs into fieldtrip for the final statistics). P.P.S. would you know a good online resource where the difference between various filters is explained in a way that allows the users of FieldTrip to make a better choise in the filter settings? From tomh at KURAGE.NIMH.NIH.GOV Mon Aug 28 22:21:09 2006 From: tomh at KURAGE.NIMH.NIH.GOV (Tom Holroyd (NIH/NIMH) [E]) Date: Mon, 28 Aug 2006 16:21:09 -0400 Subject: William Gaetz is out of the office. In-Reply-To: Message-ID: NARF! William Gaetz wrote: > I will be out of the office starting 28/08/2006 and will not return until > 04/09/2006. > > I will respond to your message when I return. -- Tom Holroyd, Ph.D. We experience the world not as it is, but as we expect it to be. From r.oostenveld at FCDONDERS.RU.NL Mon Aug 28 22:27:02 2006 From: r.oostenveld at FCDONDERS.RU.NL (Robert Oostenveld) Date: Mon, 28 Aug 2006 22:27:02 +0200 Subject: read in EEProbe cnts In-Reply-To: <563D12B4-B4C5-49A3-A4D8-01CE15B0F763@fcdonders.ru.nl> Message-ID: Hi Dorothea, >> „ Invalid MEX-file '\\fieldtrip-20060802\private >> \read_eep_cnt.dll': Unzulässiger Zugriff auf einen >> Speicherbereich. “ (Unauthorized access to memory) >> >> I should add that I am not specifying the begin and end sample of >> the data. Some more comments: the read_eep_cnt mex file consists of a small snippet of c-code that uses a reading function from a c-library from ANT. Although the c-code for the read_eep_cnt fiunction is open source and available (see http://oase.uci.kun.nl/~roberto/index.php/ eeprobe/), the low-level functions in the c-library from ANT are not available. Therefore I cannot fix the functions. Please contact ANT and tell them to fix the problems with the Matlab support of their data format and/or to make an open source version of their library available. In this case, the problem is probably either related to not specifying the begin and end sample of the data segment that you want to read, or is related to imcompatible matlab/mex-file versions. I suggest that you follow up on Christians suggestions. You could also try reading the data from begsample 1 to endsample 1 (i.e. one sample, which should be in the file always). best Robert From r.oostenveld at FCDONDERS.RU.NL Mon Aug 28 23:20:21 2006 From: r.oostenveld at FCDONDERS.RU.NL (Robert Oostenveld) Date: Mon, 28 Aug 2006 23:20:21 +0200 Subject: read in EEProbe data In-Reply-To: Message-ID: Hi Dorothea On 4 Aug 2006, at 11:27, Hämmerer, Dorothea wrote: > I want to read in EEProbe files to work on them with fieldtrip. > > Is there somebody who has already done that who could tell me which > information of what files I shall read in? One comment on a more general level: in fieldtrip you do not have to do something specifically to read data in the EEProbe format. You can just follow the tutorial examples and documentation, and replace the datafile by yours (of course triggers will be different). The FieldTrip reading functions will automatically detect that it is EEProbe format, and use the appropriate low-level functions. So the functions that you really should be looking at are DEFINETRIAL and PREPROCESSING. I have added an example matlab script that demonstrates how to get started with fieldtrip and read data into matlab. You can find it at http://www2.ru.nl/fcdonders/fieldtrip/doku.php? id=fieldtrip:documentation:getting_started_with_reading_raw_eeg_or_meg_d ata In your case just replace the filename with your cnt file. best regards, Robert From r.oostenveld at FCDONDERS.RU.NL Tue Aug 29 16:59:16 2006 From: r.oostenveld at FCDONDERS.RU.NL (Robert Oostenveld) Date: Tue, 29 Aug 2006 16:59:16 +0200 Subject: channel mismatch In-Reply-To: Message-ID: Hi Harald, On 3 Aug 2006, at 16:22, Harald Stoegbauer wrote: > The problme is that the tfc-files form different subjects have > different > amount of channels due to artifact rejection. > ... > Is there a simple way to use only channels which are used in all > subjects ? All Fieldtrip functions in principle should support datasets with different input channels (i.e. only selecting the overlapping channels), but it seems that that is not yet supported in the FREQGRANDAVERAGE function. I have fixed that and will include the updated version in the FTP release tonight. thanks for reporting this bug Robert From r.oostenveld at FCDONDERS.RU.NL Tue Aug 29 23:46:25 2006 From: r.oostenveld at FCDONDERS.RU.NL (Robert Oostenveld) Date: Tue, 29 Aug 2006 23:46:25 +0200 Subject: clusterrandanalysis on scalar values + problem with topoplotER In-Reply-To: <001601c6c6b3$130506e0$43ccae83@fcdonders.nl> Message-ID: Dear Marco On 23 Aug 2006, at 14:53, Eric Maris wrote: >> 2) Is there a way to compute the null distribution by considering >> all possible reassignments of the conditions instead of the Monte >> Carlo approximation - in this case it would be feasible because >> all possible reassignments should be 2^9, right? > This is not possible with clusterrandanalysis. However, this is > possible with one of the new statistics functions in Fieldtrip that > will replace both clusterrandanalysis and sourcestatistics. The > function of interest for you is timelockstatistics, and you should > have a look at the help information for the lower-level function > statistics_montecarlo (which is called by timelockstatistics). > However, provided that you use more than 500 draws from the > permutation distribution, don’t expect major changes in the output. We have an in-house version of fieldtrip, and an external FTP version. The in-house version is always slightly more advanced than the external version. Even though the timelockstatistics function was already included in recent external fieldtrip versions (the daily zip files) on the Donders FTP server, I just noticed that the underlying statistics_montecarlo function that Eric is referring to was still missing from the zip file. I have now also tagged that function (and some further subfunctions on which it depends) to be released in the external fieldtrip release. You should be able to use the timelockstatistics function with both the montecarlo and the complete permutation (cfg.numrandomization='all') based estimaes for the cluster statistics. I hope it works with the new function, if not then don't hesitate to contact us. Robert From P.PRAAMSTRA at BHAM.AC.UK Wed Aug 30 13:19:31 2006 From: P.PRAAMSTRA at BHAM.AC.UK (Dr Peter Praamstra) Date: Wed, 30 Aug 2006 12:19:31 +0100 Subject: tfc timecourse In-Reply-To: Message-ID: Hi Robert, you helpfully suggested how I can extract the timecourse of activity in a given freq band from TFC representations: > Doe maar > plot(freq.freq, '.') > en lees de index van de beta frequentie af (index=nummer staat langs > x-as, de fysieke frequentie langs y-as). Het freq.freq veld > beschrijft de frequentie as in de data (net als freq.time en > freq.label de twee andere assen beschrijven). > Vervolgens kun je > plot(freq.time, freq.powspctrm(chanindx, freqindx, :)) % voor 1 > kanaal, of > plot(freq.time, freq.powspctrm( :, freqindx, :)) % voor > alle kanalen > doen en krijg je power (vertikaal) tegen tijd (horizontaal). > Alternatief kun je natuurlijk ook naar > plot(freq.time, sqrt(freq.powspctrm(chanindx, freqindx, :))) > kijken voor de absolute amplitude in plaats van power (sqrt(pow) > =amplitude). However, freq and freq.freq seem to be undefined variables. Is that due to the TFCs being imported from BESA rather than generated in FT? If so, any suggestions as to how else to proceed? (know this is trivial for proficient matlab users, but possibly relevant for other BESA/FT users). wirh best wishes, Peter Praamstra From marie at PSY.GLA.AC.UK Wed Aug 30 15:06:30 2006 From: marie at PSY.GLA.AC.UK (Marie Smith) Date: Wed, 30 Aug 2006 14:06:30 +0100 Subject: Postdoctoral Research Assistant position Message-ID: UNIVERSITY OF GLASGOW CENTRE FOR COGNITIVE NEURO IMAGING DEPARTMENT OF PSYCHOLOGY Postdoctoral Research Assistant £25633 - £31525 per annum REF #12426/DPF/A3 Applications are invited for a Postdoctoral Research Assistant to work with Professor Philippe Schyns, Dr Klaus Kessler and Dr Marie Smith on a BBSRC funded project ‘Cortical Networks for Flexible Organisations’, which is aimed at providing a flow-chart of information processing within the cortical networks associated with the integration of facial features during face categorisation tasks, such as gender and expression. Under the guidance of the grant holders you will have the opportunity to: contribute to the design of event-related MEG experiments; collect the data with a state of the art MEG system; apply cutting edge techniques to analyse brain signals in the time and frequency domain; solve the inverse problem in order to identify processing networks; and reverse correlate brain activity with facial features. Finally, this will also give you the opportunity to practice your skills in writing scientific articles for high impact journals. For three years you will be part of a successful team of researchers in Glasgow who work on this and related topics. This post is available from 1 October 2006. You will be qualified, with a PhD, or equivalent, in cognitive neuroscience or a related discipline. You will also have experience of running psychophysical, cognitive and brainimaging experiments, with experience in MEG and/or EEG date collection and analysis. You will have excellent programming skills, particularly with MATLAB and will be experienced in image processing, signal analysis in the time and frequency domain, the inverse-problem and beamforming / source localisation methods. Finally you should have a strong interest in pursuing a research career. Informal enquiries may be made to Professor P Schyns, (+44 (0)141 330 4937; p.schyns at psy.gla.ac.uk Dr Klaus Kessler (+44 (0)141 330 4774; k.kessler at psy.gla.ac.uk) or Dr Marie Smith (+44 (0)141 330 3987; m.smith at psy.gla.ac.uk). For further details about the post and how to apply: see our web site at http://www.psy.gla.ac.uk/jobs.php or contact Ms Lynsay McGinlay, Department of Psychology, University of Glasgow, G12 8QQ (+44 (0)141 330 3986, e-mail l.mcginlay at psy.gla.ac.uk or the University web site at www.gla.ac.uk Closing Date : September 21st 2006 -------------- next part -------------- An HTML attachment was scrubbed... URL: From r.oostenveld at FCDONDERS.RU.NL Thu Aug 31 21:07:11 2006 From: r.oostenveld at FCDONDERS.RU.NL (Robert Oostenveld) Date: Thu, 31 Aug 2006 21:07:11 +0200 Subject: tfc timecourse In-Reply-To: <44F58253.16835.C429F3@P.PRAAMSTRA.Bham.ac.uk> Message-ID: On 30 Aug 2006, at 13:19, Dr Peter Praamstra wrote: > However, freq and freq.freq seem to be undefined variables. Is that > due to the TFCs being > imported from BESA rather than generated in FT? If so, any > suggestions as to how else to > proceed? > > (know this is trivial for proficient matlab users, but possibly > relevant for other BESA/FT > users). Hi Peter, In the documentation and in demo scripts I always use "freq" to indicate a data structure that contains frequence decomposed data (i.e. the output of freqanalysis in FT). The variable that I indicated with "freq" could be called differently in your Matlab session. From the FT-BESA documentation at http://www2.ru.nl/ fcdonders/fieldtrip/doku.php? id=fieldtrip:documentation:integrating_with_besa > For example, you can read in event-related potential data using > > timelock = besa2fieldtrip('filename.avr'); > > or a time-frequency estimate of power using > > freq = besa2fieldtrip('filename.tfc'); I hope this helps, Robert From r.oostenveld at FCDONDERS.RU.NL Thu Aug 31 22:33:51 2006 From: r.oostenveld at FCDONDERS.RU.NL (Robert Oostenveld) Date: Thu, 31 Aug 2006 22:33:51 +0200 Subject: Filtering In-Reply-To: <1157032724.44f6eb14e9662@webmail.technion.ac.il> Message-ID: Hi Vladimir, On 31 Aug 2006, at 15:58, litvak at techunix.technion.ac.il wrote: > Another question I have (you may post the answer to the list or put > it in the > FAQ if you want) is how do I translate from BESA filter settings > (like 6 db/Oct > or 12 db/Oct) to filter order in FT? I took a DSP course a couple > of years ago > but all memory of this faded by now. The filter order for the Butterworth filter (filttype='but') is different from that of the FIR filters. For the Butterworth, you can look here (http://www.answers.com/topic/butterworth-filter#after_ad2) for full details. Furthermore, in the Matlab signal processing toolbox you can also find a filter design tool (a.o.). Type "help butter" and "help butord" on the command line for more background. Furthermore, on thefieldtrip website -> documentation -> example scripts -> at the bottom you will see http://www2.ru.nl/fcdonders/fieldtrip/doku.php? id=fieldtrip:documentation:determine_the_filter_characteristics which gives you some hands on tricks to determine it yourself. The frequency response plots can be compared to the figs on the external website: to translate the frequency response (expressed as power, not amplitude) to decibel -> 10^-0.3 = -3 dB, and in general 10^-x = -10*x dB. best Robert P.S. note that a Nst order filter applied in both directions (cfg.XXfiltdir='twopass') effectively corresponds to an 2xNth order filter, since you filter twice. P.P.S. to summarise: "4th order"+"twopass" (which are the defaults) corresponds to 2x4x6 = 48dB/octave, so that is pretty steep. From kambiz.tavabi at UNI-MUENSTER.DE Wed Aug 2 12:03:26 2006 From: kambiz.tavabi at UNI-MUENSTER.DE (Kambiz Tavabi) Date: Wed, 2 Aug 2006 12:03:26 +0200 Subject: Dipole modeling & averaged CTF data Message-ID: Dear FieldTrippers, I am relatively ignorant with MATLAB and even more so with FIELDTRIP. With that said I would like to implement ECD modeling with preprocessed averaged CTF MEG data for the evoked gamma auditory response using MNI-aligned grids in individual head-space for the dipole scans. For starting I am beginning with the following example scripts from the FT-Docs; Fit a dipole to the tactile ERF after mechanical stimulation & Create MNI-aligned grids in individual head-space. So far I am facing these issues: (i) Since I am working with averaged data I would like to skip the TIMELOCKANALYSIS, however when I do so I cannot get the butterfly plot of the ERF because I am unable to pass 'time' & 'avg' to plot(1000*avg.time, avg.avg) directly from data.trial:{[274x150 double]} or data.time:{[1x150 double]}, since function 'mtimes' is not defined for values of class 'cell'. (ii) I proceed to use TIMELOCKANALYSIS and obtain the avg structure using... cfg.channel = 'MEG'; cfg.latancy = ['prestim' 'poststim']; cfg.covariance = 'no'; cfg.blcovariance = 'no'; cfg.keeptrials = 'yes'; cfg.normalizevar = 'N'; cfg.removemean = 'no'; cfg.vartrllength = 2; cfg.vartrllength = 2; avg = timelockanalysis(cfg, data); getting the warning Warning: Divide by zero. In timelockanalysis at 536 since I only have one trial. The butterfly plot now looks reasonable. To fit dipoles I use... cfg = []; cfg.latency = [0.045 0.120]; cfg.numdipoles = 2; cfg.symmetry = []; cfg.model='regional'; cfg.hdmfile = 'A0109.hdm'; cfg.feedback = 'textbar'; cfg.resolution = 2; dipeGBR = dipolefitting(cfg, avg); and I get... ??? Error using ==> dipolefitting dipole scanning is only possible for a single dipole or a symmetric dipole pair. From what I understand I am using symmetric dipoles, which is fine to begin with but ultimately I would like to used two regional sources free of the symmetry constraint. What are my options? Thanks for your time. Kambiz -- ============================================ Kambiz Tavabi, Dipl. Psych., MS. Institute for Biomagnetism and Biosignalanalysis Muenster University Hospital Malmedyweg 15 D-48149 Muenster Germany phone: +49-(0)251-83-56884 fax: +49-(0)251-83-56874 e-Mail: Kambiz.Tavabi at uni-muenster.de ============================================ -------------- next part -------------- A non-text attachment was scrubbed... Name: kambiz.tavabi.vcf Type: text/x-vcard Size: 429 bytes Desc: not available URL: From litvak at TX.TECHNION.AC.IL Wed Aug 2 17:39:07 2006 From: litvak at TX.TECHNION.AC.IL (Vladimir Litvak) Date: Wed, 2 Aug 2006 17:39:07 +0200 Subject: International graduate school Wuerzburg, Germany; "Processing of affective stimuli: from the molecular basis to the emotional experience" Message-ID: Dear all, I was asked to forward this for those who might be interested. Vladimir -------------------------------------------------------------------- Dear colleagues The International Graduate School of the University of Würzburg invites applications for 16 fellowships within the PhD program/Research Training Group "Processing of affective stimuli: from the molecular basis to the emotional experience", which is funded by the DFG and will start in Autumn 2006. Fellowships are initially limited to 1.5 years, with the possibility of 1.5 year extension. For more information see the attachments. Yours sincerely Joseph Classen Dr. J. Classen Dept. Neurology University of Wuerzburg Josef-Schneider Str. 11 97080 Wuerzburg Germany Tel. ++49-(0)931-201-23504 Fax. ++49-(0)931-201-23502 -------------- next part -------------- A non-text attachment was scrubbed... Name: Graduate school emotions.doc Type: application/msword Size: 31232 bytes Desc: not available URL: From h.stoegbauer at GMAIL.COM Thu Aug 3 16:22:56 2006 From: h.stoegbauer at GMAIL.COM (Harald Stoegbauer) Date: Thu, 3 Aug 2006 16:22:56 +0200 Subject: channel mismatch Message-ID: Hi, I would like to import tfc-files from BESA (like in the example "Apply clusterrandanalysis on TFRs of power that were computed with BESA"). The problme is that the tfc-files form different subjects have different amount of channels due to artifact rejection. So when I apply freqgrandaverage one get the error: cond1all = freqgrandaverage(cfg, cond1{:}); ??? Subscripted assignment dimension mismatch. Error in ==> freqgrandaverage at 107 Is there a simple way to use only channels which are used in all subjects ? Thanks, Harald From jciveira at UNAV.ES Thu Aug 3 21:08:13 2006 From: jciveira at UNAV.ES (Juan Civeira) Date: Thu, 3 Aug 2006 21:08:13 +0200 Subject: Beamforming Message-ID: Hello all. I am doing sourceanalysis with timelocked data and I had come across with problem that I can not use all the algorithms because there are not all the required functions in the fieldtrip toolbox. I have downloaded the last one but it is the same Does anyone know how to get the following functions or what I have to use instead? - minimumnormestimate.m - residualvariance.m - music.m - loreta.m Thanks Juan From marco.buiatti at GMAIL.COM Fri Aug 4 11:22:06 2006 From: marco.buiatti at GMAIL.COM (Marco Buiatti) Date: Fri, 4 Aug 2006 11:22:06 +0200 Subject: clusterrandanalysis on scalar values + problem with topoplotER Message-ID: Dear FieldTrippers, I am using Cluster Randomization Analysis (CRA) on scalar data and I would like to be sure that the procedure is correct. Results are plausible, but since this is not the canonical use of CRA, I would like to have your feedback. I have 9 subjects, two experimental condition for each subject, and 39 channels. For every subject, channel and condition, I computed an exponent alpha of the power law that better fits the temporal long-range autocorrelations in the data, i.e. a scalar value between 0.5 and 1.5. I transformed the data in a format suitable to CRA by using eeglab2fieldtrip.mto obtain the electrode structure, and by transforming the data structure by hand to mimick the output of the tutorial data, CRA Within-Subjects case. The result for each condition is a structure like this: data1 = label: {39x1 cell} fsample: 500 elec: [1x1 struct] cfg: [1x1 struct] dimord: 'repl_chan_time' individual: [9x39 double] time: 1 I then performed CRA with the following parameters: cfg=[]; cfg.statistic='depsamplesT'; cfg.alphathresh=0.05; cfg.makeclusters='yes'; cfg.minnbchan=2; cfg.neighbourdist=1; cfg.clusterteststat='maxsum'; cfg.onetwo='twosided'; cfg.alpha=0.05; cfg.nranddraws=500; cfg.channel={'all'}; [clusrand]=clusterrandanalysis(cfg,data1,data2); My questions are: 1) Is this procedure correct or are there specific parameters for scalar data? 2) Is there a way to compute the null distribution by considering all possible reassignments of the conditions instead of the Monte Carlo approximation - in this case it would be feasible because all possible reassignments should be 2^9, right? Last point, when I ran the examples on the tutorial data in the Cluster Randomization Analysis section, Within-Subjects case, I found out a little error: clusrand from clusranderfcpFICvsFCorig.mat has two fields with incorrect dimensions that give errors when plotted: stats: [151x1x301 double] raweffect: [151x1x301 double] while they should be stats: [151x301 double] raweffect: [151x301 double] and a problem with plotting (once the little error corrected): I attach the figure that I plotted by following the instructions in the tutorial. I am using Matlab 7 and FieldTrip version 20060731. Can you help me with this? Thank you and have a good day, Marco -- Marco Buiatti - Post Doc ************************************************************** Cognitive Neuroimaging Unit - INSERM U562 Service Hospitalier Frederic Joliot, CEA/DRM/DSV 4 Place du general Leclerc, 91401 Orsay cedex, France Telephone: +33 1 69 86 77 65 Fax: +33 1 69 86 78 16 E-mail: marco.buiatti at gmail.com Web: www.unicog.org *************************************************************** -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: tutorial_clusrand.jpg Type: image/jpeg Size: 35084 bytes Desc: not available URL: From haemmerer at MPIB-BERLIN.MPG.DE Fri Aug 4 11:27:26 2006 From: haemmerer at MPIB-BERLIN.MPG.DE (=?iso-8859-1?Q?H=E4mmerer=2C_Dorothea?=) Date: Fri, 4 Aug 2006 11:27:26 +0200 Subject: read in EEProbe data Message-ID: Hi! I want to read in EEProbe files to work on them with fieldtrip. Is there somebody who has already done that who could tell me which information of what files I shall read in? Thank you! Dorothea -------------- next part -------------- An HTML attachment was scrubbed... URL: From haemmerer at MPIB-BERLIN.MPG.DE Wed Aug 9 17:26:43 2006 From: haemmerer at MPIB-BERLIN.MPG.DE (=?iso-8859-1?Q?H=E4mmerer=2C_Dorothea?=) Date: Wed, 9 Aug 2006 17:26:43 +0200 Subject: read in EEProbe cnts Message-ID: Hi! I am trying to read in EEProbe cnt files. When I use the read_eep_cnt function, I get the following error message: " Invalid MEX-file '\\fieldtrip-20060802\private\read_eep_cnt.dll': Unzulässiger Zugriff auf einen Speicherbereich. " (Unauthorized access to memory) I should add that I am not specifying the begin and end sample of the data. Did anybody of you encounter the same problem? Thank you very much for your reply, Dorothea Hämmerer -------------- next part -------------- An HTML attachment was scrubbed... URL: From MZvyagintsev at UKAACHEN.DE Wed Aug 9 20:14:28 2006 From: MZvyagintsev at UKAACHEN.DE (Mikhail Zvyagintsev) Date: Wed, 9 Aug 2006 20:14:28 +0200 Subject: Beamforming In-Reply-To: <44D2499D.6080502@unav.es> Message-ID: Hi Juan, You are absolutely correct. Some functions still are not included in the current version of Filedtrip. They still need to be tested. I am personally gonna to be a tester for LORETA approach in Fieldtrip. I will not encourage you too much - I still did not start to do this, but at least I promise to do my best. About other routines honestly I don't know. Regards, Mikhail. Juan Civeira wrote: > Hello all. > > I am doing sourceanalysis with timelocked data and I had come across > with problem that I can not use all the algorithms because there are > not all the required functions in the fieldtrip toolbox. I have > downloaded the last one but it is the same > > Does anyone know how to get the following functions or what I have to > use instead? > - minimumnormestimate.m > - residualvariance.m > - music.m > - loreta.m > > Thanks > > Juan > > From MZvyagintsev at UKAACHEN.DE Wed Aug 9 20:36:30 2006 From: MZvyagintsev at UKAACHEN.DE (Mikhail Zvyagintsev) Date: Wed, 9 Aug 2006 20:36:30 +0200 Subject: data filtering in Fieldtrip Message-ID: Dear Robert, I have a question regarding filtering in Fieldtrip. I see, that in example routines you apply quite often 'butter' function. I got a feeling that this is rather a rude approach (I might be wrong). For example, I see that some important information could be lost using it. I am trying to use 'firpmord' function to generate parameters and then 'firpm' for filter design. For filtration 'fltfilt' like you do. They all need Sgnal Processing Toolbox, therefore it should not be a limitaion. What is your opinion about filtering? Thanks in advance, Mikhail. -- __________________________________________________________________ Mikhail Zvyagintsev MD, BSc Klinik für Psychiatrie & Psychotherapie UK Aachen Pauwelsstr. 30 D-52074 Aachen tel +49-0241-80 85580 FAX +49-0241-80 82401 MZvyagintsev at UKAachen.de From c.hesse at FCDONDERS.RU.NL Thu Aug 10 09:53:59 2006 From: c.hesse at FCDONDERS.RU.NL (Christian Hesse) Date: Thu, 10 Aug 2006 09:53:59 +0200 Subject: read in EEProbe cnts In-Reply-To: Message-ID: Hi Dorothea, If you intend to use Fieldtrip for subsequent analysis of your data then if may be a good idea to use the (slightly) higher level reading functions, e.g. read(_fcdc)_data and read(_fccd)_header, since these will return the appropriate data structures. Even if you just want to read the data into an array and do your own stuff, then using the read_data function is a good idea, as it provides a very clean interface for the readers for individual formats. > I am trying to read in EEProbe cnt files. When I use the > read_eep_cnt function, I get the following error message: > > > > „ Invalid MEX-file '\\fieldtrip-20060802\private\read_eep_cnt.dll': > Unzulässiger Zugriff auf einen Speicherbereich. “ (Unauthorized > access to memory) > > > > I should add that I am not specifying the begin and end sample of > the data. Some things to check/try: a) which operating system are your using (WINDOWS/UNIX/MAC)? b) is the DLL where it is supposed to be? c) you should specify begin and end samples for the read_eep_cnt function (note that the read_data function automatically determines what these should be if you don't specify them). Hope this helps. Regards, Christian -------------- next part -------------- An HTML attachment was scrubbed... URL: From j.poort at NIN.KNAW.NL Wed Aug 16 16:59:43 2006 From: j.poort at NIN.KNAW.NL (Jasper Poort) Date: Wed, 16 Aug 2006 16:59:43 +0200 Subject: artifact rejection Message-ID: Hi all, I noticed a problem with artifact viewer: when I perform artifact rejection with cfg.interactive='yes', I get the following error message: ??? Subscript indices must either be real positive integers or logicals. Error in ==> fieldtrip\private\artifact_viewer>read_and_plot at 85 plot(xval(sel), zval(sel), 'b'); Error in ==> fieldtrip\private\artifact_viewer at 41 read_and_plot(h); Error in ==> artifact_zvalue at 254 artifact_viewer(cfg, cfg.artfctdef.zvalue, zsum, artval, zindx); Error in ==> artifact_eog at 126 [tmpcfg, artifact] = artifact_zvalue(tmpcfg); Error in ==> rejectartifact at 197 cfg = feval(sprintf('artifact_%s', cfg.artfctdef.type{type}), cfg); The problem comes from the variable sel that is used for indexing which contains fractions: >> sel = trlpadsmp:(length(data)-trlpadsmp); >> plot(xval(sel), zval(sel), 'b'); cfg.artfctdef.eog.trlpadding default = 0.5 if the sampling frequency is not a nice round number (e.g. 625) >> trlpadsmp = artcfg.trlpadding*hdr.Fs; will result in an error Second, is it possible to reject pieces of data with rejectartifact that are deviant over a group of channels? For example, if I wanted to use the temporal channels to throw out eye blinks, can I specify a group of channels and reject data pieces on the basis of some sort of composite z-score instead of checking data channel by channel? Thanks, greetings Jasper -------------- next part -------------- An HTML attachment was scrubbed... URL: From Lilla.Magyari at FCDONDERS.RU.NL Wed Aug 23 13:38:39 2006 From: Lilla.Magyari at FCDONDERS.RU.NL (Lilla Magyari) Date: Wed, 23 Aug 2006 13:38:39 +0200 Subject: filtering after preprocessing In-Reply-To: <000e01c6b649$ce54f560$bbee19ac@dellgx240> Message-ID: Dear all, One more question. I did event-related averaging with timelockanalysis on MEG data in Fieldtrip and later I computed the planar gradient. However, the results look to be noisy when I plot them. Therefore, I would like to ask if it is possible to filter my data after preprocessing in Fieldtrip (I haven't found any function for filtering separately from the preprocessing function)? Or does filtering work only during preprocessing? Thanks for answers. Best regards, Lilla Magyari From Lilla.Magyari at FCDONDERS.RU.NL Wed Aug 23 13:29:31 2006 From: Lilla.Magyari at FCDONDERS.RU.NL (Lilla Magyari) Date: Wed, 23 Aug 2006 13:29:31 +0200 Subject: clusterrandomizationanalysis on coherence data In-Reply-To: <000e01c6b649$ce54f560$bbee19ac@dellgx240> Message-ID: Dear Fieldtrip users and developers, I would like to evaluate my coherence results with the cluster randomization statistics in Fieldtrip. My data files consisting of powerspctrm and cohspctrm fields, as well (the time-frequency analysis of coherence was calculated with fieldtrip). Therefore, it is not clear for me where or how can I specify for the clusterrandanalysis function that I am interested in the statistics of the coherence spectra and not the power spectra. Or do I have to delete the powspctrm field to make it sure that the clusterrandanalysis function would work on the coherence? And in general, is this the right way of the statistical analysis of my coherence data (which is infact, went through a planar transformation) or should I use another statistics? Thanks for any answer and suggestion in advance. Lilla Magyari From marco.buiatti at GMAIL.COM Wed Aug 23 14:06:58 2006 From: marco.buiatti at GMAIL.COM (Marco Buiatti) Date: Wed, 23 Aug 2006 14:06:58 +0200 Subject: clusterrandanalysis on scalar values + problem with topoplotER In-Reply-To: <22f732b0608040222k799d74ddq765b40858c764006@mail.gmail.com> Message-ID: Dear FieldTrippers, I send this message again, hoping that you can post it this time. Best regards, Marco ---------- Forwarded message ---------- From: Marco Buiatti Date: Aug 4, 2006 11:22 AM Subject: clusterrandanalysis on scalar values + problem with topoplotER To: FIELDTRIP at nic.surfnet.nl Dear FieldTrippers, I am using Cluster Randomization Analysis (CRA) on scalar data and I would like to be sure that the procedure is correct. Results are plausible, but since this is not the canonical use of CRA, I would like to have your feedback. I have 9 subjects, two experimental condition for each subject, and 39 channels. For every subject, channel and condition, I computed an exponent alpha of the power law that better fits the temporal long-range autocorrelations in the data, i.e. a scalar value between 0.5 and 1.5. I transformed the data in a format suitable to CRA by using eeglab2fieldtrip.mto obtain the electrode structure, and by transforming the data structure by hand to mimick the output of the tutorial data, CRA Within-Subjects case. The result for each condition is a structure like this: data1 = label: {39x1 cell} fsample: 500 elec: [1x1 struct] cfg: [1x1 struct] dimord: 'repl_chan_time' individual: [9x39 double] time: 1 I then performed CRA with the following parameters: cfg=[]; cfg.statistic='depsamplesT'; cfg.alphathresh=0.05; cfg.makeclusters='yes'; cfg.minnbchan=2; cfg.neighbourdist=1; cfg.clusterteststat='maxsum'; cfg.onetwo='twosided'; cfg.alpha=0.05; cfg.nranddraws=500; cfg.channel={'all'}; [clusrand]=clusterrandanalysis(cfg,data1,data2); My questions are: 1) Is this procedure correct or are there specific parameters for scalar data? 2) Is there a way to compute the null distribution by considering all possible reassignments of the conditions instead of the Monte Carlo approximation - in this case it would be feasible because all possible reassignments should be 2^9, right? Last point, when I ran the examples on the tutorial data in the Cluster Randomization Analysis section, Within-Subjects case, I found out a little error: clusrand from clusranderfcpFICvsFCorig.mat has two fields with incorrect dimensions that give errors when plotted: stats: [151x1x301 double] raweffect: [151x1x301 double] while they should be stats: [151x301 double] raweffect: [151x301 double] and a problem with plotting (once the little error corrected): I attach the figure that I plotted by following the instructions in the tutorial. I am using Matlab 7 and FieldTrip version 20060731. Can you help me with this? Thank you and have a good day, Marco -- Marco Buiatti - Post Doc ************************************************************** Cognitive Neuroimaging Unit - INSERM U562 Service Hospitalier Frederic Joliot, CEA/DRM/DSV 4 Place du general Leclerc, 91401 Orsay cedex, France Telephone: +33 1 69 86 77 65 Fax: +33 1 69 86 78 16 E-mail: marco.buiatti at gmail.com Web: www.unicog.org *************************************************************** -- Marco Buiatti - Post Doc ************************************************************** Cognitive Neuroimaging Unit - INSERM U562 Service Hospitalier Frederic Joliot, CEA/DRM/DSV 4 Place du general Leclerc, 91401 Orsay cedex, France Telephone: +33 1 69 86 77 65 Fax: +33 1 69 86 78 16 E-mail: marco.buiatti at gmail.com Web: www.unicog.org *************************************************************** -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: tutorial_clusrand.jpg Type: image/jpeg Size: 35084 bytes Desc: not available URL: From maris at NICI.RU.NL Wed Aug 23 14:53:04 2006 From: maris at NICI.RU.NL (Eric Maris) Date: Wed, 23 Aug 2006 14:53:04 +0200 Subject: clusterrandanalysis on scalar values + problem with topoplotER In-Reply-To: <22f732b0608230506t135a9086m6ab82b07c345fe2a@mail.gmail.com> Message-ID: Dear Marco, You have posted this message once before. This was during my holidays, so I did not reply then. When I returned from holidays, I forgot to send you a reply. My apologies for this. I am using Cluster Randomization Analysis (CRA) on scalar data and I would like to be sure that the procedure is correct. Results are plausible, but since this is not the canonical use of CRA, I would like to have your feedback. I have 9 subjects, two experimental condition for each subject, and 39 channels. For every subject, channel and condition, I computed an exponent alpha of the power law that better fits the temporal long-range autocorrelations in the data, i.e. a scalar value between 0.5 and 1.5. I transformed the data in a format suitable to CRA by using eeglab2fieldtrip.m to obtain the electrode structure, and by transforming the data structure by hand to mimick the output of the tutorial data, CRA Within-Subjects case. The result for each condition is a structure like this: data1 = label: {39x1 cell} fsample: 500 elec: [1x1 struct] cfg: [1x1 struct] dimord: 'repl_chan_time' individual: [9x39 double] time: 1 I then performed CRA with the following parameters: cfg=[]; cfg.statistic='depsamplesT'; cfg.alphathresh=0.05; cfg.makeclusters='yes'; cfg.minnbchan=2; cfg.neighbourdist=1; cfg.clusterteststat='maxsum'; cfg.onetwo='twosided'; cfg.alpha=0.05; cfg.nranddraws=500; cfg.channel={'all'}; [clusrand]=clusterrandanalysis(cfg,data1,data2); My questions are: 1) Is this procedure correct or are there specific parameters for scalar data? As far as I can see, this analysis is correct. However, these are not scalar data, because you have observed the EEG on 39 sensors. If you had observed the data on a single sensor only (and a single time point), then the data would have been scalar (i.e., expressible as a single number for every experimental condition). 2) Is there a way to compute the null distribution by considering all possible reassignments of the conditions instead of the Monte Carlo approximation - in this case it would be feasible because all possible reassignments should be 2^9, right? This is not possible with clusterrandanalysis. However, this is possible with one of the new statistics functions in Fieldtrip that will replace both clusterrandanalysis and sourcestatistics. The function of interest for you is timelockstatistics, and you should have a look at the help information for the lower-level function statistics_montecarlo (which is called by timelockstatistics). However, provided that you use more than 500 draws from the permutation distribution, don't expect major changes in the output. Last point, when I ran the examples on the tutorial data in the Cluster Randomization Analysis section, Within-Subjects case, I found out a little error: clusrand from clusranderfcpFICvsFCorig.mat has two fields with incorrect dimensions that give errors when plotted: stats: [151x1x301 double] raweffect: [151x1x301 double] while they should be stats: [151x301 double] raweffect: [151x301 double] Yes, this is an inconvenient format for plotting. I will change it. and a problem with plotting (once the little error corrected): I attach the figure that I plotted by following the instructions in the tutorial. I am using Matlab 7 and FieldTrip version 20060731. Can you help me with this? My hunch is that these strange plotting results are a due to inappropriate limits of the color axis. You should use the same limits for all plots in a series. Also, choose the color limits symmetric around zero. By-the-way, I was surprised to see a time axis in your plots. I thought you only had a spatial dimension. Good luck, Eric Maris -------------- next part -------------- An HTML attachment was scrubbed... URL: From maris at NICI.RU.NL Wed Aug 23 14:59:48 2006 From: maris at NICI.RU.NL (Eric Maris) Date: Wed, 23 Aug 2006 14:59:48 +0200 Subject: clusterrandomizationanalysis on coherence data In-Reply-To: <000001c6c6a7$66d34e00$932dae83@fcdonders.nl> Message-ID: Hi Lilla, > I would like to evaluate my coherence results with the cluster randomization > statistics in Fieldtrip. My data files consisting of powerspctrm and > cohspctrm fields, as well (the time-frequency analysis of coherence was > calculated with fieldtrip). Therefore, it is not clear for me where or how > can I specify for the clusterrandanalysis function that I am interested in > the statistics of the coherence spectra and not the power spectra. Or do I > have to delete the powspctrm field to make it sure that the > clusterrandanalysis function would work on the coherence? > And in general, is this the right way of the statistical analysis of my > coherence data (which is infact, went through a planar transformation) or > should I use another statistics? Statistical testing of coherence differences using cluster-based non-parametric tests are not yet implemented in Fieldtrip. This is one of functionalities that will be added in the near future (i.e., when I have graded the 400 retake-exams of my undergraduate methodology course (-;). Greetings, Eric Maris From marcel.bastiaansen at FCDONDERS.RU.NL Wed Aug 23 16:25:53 2006 From: marcel.bastiaansen at FCDONDERS.RU.NL (Marcel Bastiaansen) Date: Wed, 23 Aug 2006 16:25:53 +0200 Subject: clusterrandomizationanalysis on coherence data In-Reply-To: <001e01c6c6b4$03fd9080$43ccae83@fcdonders.nl> Message-ID: An HTML attachment was scrubbed... URL: From Jan.Schoffelen at FCDONDERS.RU.NL Mon Aug 28 09:50:13 2006 From: Jan.Schoffelen at FCDONDERS.RU.NL (Jan Mathijs Schoffelen) Date: Mon, 28 Aug 2006 09:50:13 +0200 Subject: artifact rejection In-Reply-To: <01bf01c6c144$9ba4bf00$910b57c0@ABSYS> Message-ID: Hoi Jasper, Sorry for the delay, Robert and I have been on a conference. I guess your first problem should be solved easily by trlpadsmp = round(artcfg.trlpadding*hdr.Fs); I will change it in the code (you can do so as well in your local copy). Pretty soon it will show up in the latest download. With regard to your second question: Second, is it possible to reject pieces of data with rejectartifact that are deviant over a group of channels? For example, if I wanted to use the temporal channels to throw out eye blinks, can I specify a group of channels and reject data pieces on the basis of some sort of composite z-score instead of checking data channel by channel? If I am not mistaken, this is exactly the behaviour artifact_muscle is supposed to have. It preprocesses the data according to some cfg (either the default settings, or those that you specify yourself), and computes a pooled-z-score across the channels specified by the cfg (default, or by you). Hope that this helps. Yours, Jan-M -------------- next part -------------- An HTML attachment was scrubbed... URL: From Jan.Schoffelen at FCDONDERS.RU.NL Mon Aug 28 09:55:49 2006 From: Jan.Schoffelen at FCDONDERS.RU.NL (Jan Mathijs Schoffelen) Date: Mon, 28 Aug 2006 09:55:49 +0200 Subject: clusterrandomizationanalysis on coherence data Message-ID: -----Original Message----- From: Jan Mathijs Schoffelen [mailto:jan.schoffelen at fcdonders.ru.nl] Sent: Wednesday, August 23, 2006 6:52 PM To: marcel.bastiaansen at fcdonders.ru.nl Subject: Re: [FIELDTRIP] clusterrandomizationanalysis on coherence data Dear Lilla, Marcel and Eric, it actually is possible to test coherence with the permutation test. in particular, when you consider only one well chosen reference channel it is pretty straightforward (the clustering algorithm then considers clusters of sensors which show an above threshold coherence difference with respect to the reference channel), especially when you use the new statistical functions in fieldtrip (still only for in-house use). i'll be happy to explain it as soon as i'm back from biomag. yours, jan-mathijs ps: it is actually possible to filter your data after you did preprocessing, by specifying the same options in your configuration as you would have done in preprocessing. however, beware of filter-ringing. ----- Original Message ----- From: Marcel Bastiaansen Date: Wednesday, August 23, 2006 7:25 am Subject: Re: [FIELDTRIP] clusterrandomizationanalysis on coherence data From r.oostenveld at FCDONDERS.RU.NL Mon Aug 28 21:43:44 2006 From: r.oostenveld at FCDONDERS.RU.NL (Robert Oostenveld) Date: Mon, 28 Aug 2006 21:43:44 +0200 Subject: back from holiday and Biomag conference Message-ID: Dear FieldTrip users, I was out of office for some time (as you might have noticed). First I was on holiday, and last week I attended the BIOMAG conference in Vancouver. FieldTrip was well appreciated there by the experimentally oriented people. Furthermore, I contacted some methods-oriented researchers who are interested in implementing their ideas in FT. Therefore I do expect some new users of our toolbox, and I also expect that there will be some follow up on the ideas for new developments that we discussed at the Biomag. There is quite a list of questions on the mailing list that has not been answered yet. I will attempt to answer them and/or comment upon them. best regards, Robert From r.oostenveld at FCDONDERS.RU.NL Mon Aug 28 21:48:32 2006 From: r.oostenveld at FCDONDERS.RU.NL (Robert Oostenveld) Date: Mon, 28 Aug 2006 21:48:32 +0200 Subject: artifact rejection In-Reply-To: <00b701c6ca76$98422060$902dae83@fcdonders.nl> Message-ID: Hi Jasper >> Second, is it possible to reject pieces of data with >> rejectartifact that are deviant over a group of channels? For >> example, if I wanted to use the >> temporal channels to throw out eye blinks, can I specify a group >> of channels and reject data pieces on the basis of some sort of >> composite >> z-score instead of checking data channel by channel? > If I am not mistaken, this is exactly the behaviour artifact_muscle > is supposed to have. It preprocesses the data according to some cfg > (either the default settings, or those that you specify yourself), > and computes a pooled-z-score across the channels specified by the > cfg (default, or by you). Just a minor correction: artifact_zvalue can work with multiple channels, and since artifact_zvalue is used both by artifact_muscle and artifact_eog, you can use both the eog and the muscle detection routines to achieve what you want (or call artifact_zvalue directly, in which case you have to specify all settings by hand). The only difference in the eog and muscle detection routines is in the defaults that they have with respect to the preprocessing (filtering etc.). best, Robert From r.oostenveld at FCDONDERS.RU.NL Mon Aug 28 21:54:42 2006 From: r.oostenveld at FCDONDERS.RU.NL (Robert Oostenveld) Date: Mon, 28 Aug 2006 21:54:42 +0200 Subject: filtering after preprocessing In-Reply-To: <000101c6c6a8$ad7e2a90$932dae83@fcdonders.nl> Message-ID: Dear Lilla On 23 Aug 2006, at 13:38, Lilla Magyari wrote: > ...results look to be noisy when I plot them. Therefore, I would > like to ask if > it is possible to filter my data after preprocessing in Fieldtrip > (I haven't > found any function for filtering separately from the preprocessing > function)? Or does filtering work only during preprocessing? You can use timelockanalysis for that. That function has hidden options (i.e. they are not documented if you type "help timelockanalysis", but you can read about them if you open the timelockanalysis funciton in the matlab editor) with exactly the same syntax as preprocessing. With those cfg options you can specify filtering, rereferencing etc. on your already averaged data. Of course you cannot do any filter padding, since that requires the data to be used for the padding to be re-read from file (which is possible during preprocessing, but not during timelockanalysis). So the idea is cfg = ... raw = preprocessing(cfg); cfg = []; avg = timelockanalysis(cfg, raw); cfg = []; cfg.lpfilter = 'yes'; cfg.lpfreq = 30; avg_f = timelockanalysis(cfg, avg); best regards, Robert From r.oostenveld at FCDONDERS.RU.NL Mon Aug 28 22:15:14 2006 From: r.oostenveld at FCDONDERS.RU.NL (Robert Oostenveld) Date: Mon, 28 Aug 2006 22:15:14 +0200 Subject: data filtering in Fieldtrip In-Reply-To: <44DA2B2E.7030508@UKAachen.de> Message-ID: Dear Mikhail On 9 Aug 2006, at 20:36, Mikhail Zvyagintsev wrote: > I have a question regarding filtering in Fieldtrip. I see, that in > example routines you apply quite often 'butter' function. I got a > feeling that this is rather a rude approach (I might be wrong). For > example, I see that some important information could be lost using > it. I am trying to use 'firpmord' function to generate parameters > and then 'firpm' for filter design. For filtration 'fltfilt' like > you do. They all need Sgnal Processing Toolbox, therefore it should > not be a limitaion. What is your opinion about filtering? I do not have strong opinions about filtering. In my formal education (physics) there was little attention spent on filter design, so I also don't know too much about the details. Of course I could say that the reason for choosing a Butterworth as default is that "Butterworth filters are optimal in the sense of having a maximally flat amplitude response, as measured using a Taylor series expansion about dc" but that is something that I just googled for, so that is cheating ;) My reason for implementing a Butterworth as default is that it is easy, seems to be good enough (but that is subjective), and is also pretty standard. The alternative that I also implemented is using the Matlab fir1 function. I did recently make some changes to the low- level filtering code, you may want to download a recent copy from the FTP server and have a look at the lowpassfilter.m function in the fieldtrip/private directory (there is also a highpassfilter etc). It should not be too difficult to add support for other filter types as well, since the cfg-handling and low-level code is designed to handle different filter types. If you feel that it is worth to implement more advanced filter design strategies (like firpm), then I certainly would welcome additions to the code. best regards, Robert P.S. I should also note that at the FC Donders most people that are using FieldTrip are mainly focussed on frequency and time-frequency analyses. That means that we often don't apply any filters to the data at all, but only bandpass-filter the data temporary in order to find artifacts (eog and muscle). The typical ERP people within the FC Donders for whom the filtering would be more relevant still use BrainVision Analyser a lot (although they do import their ERPs into fieldtrip for the final statistics). P.P.S. would you know a good online resource where the difference between various filters is explained in a way that allows the users of FieldTrip to make a better choise in the filter settings? From tomh at KURAGE.NIMH.NIH.GOV Mon Aug 28 22:21:09 2006 From: tomh at KURAGE.NIMH.NIH.GOV (Tom Holroyd (NIH/NIMH) [E]) Date: Mon, 28 Aug 2006 16:21:09 -0400 Subject: William Gaetz is out of the office. In-Reply-To: Message-ID: NARF! William Gaetz wrote: > I will be out of the office starting 28/08/2006 and will not return until > 04/09/2006. > > I will respond to your message when I return. -- Tom Holroyd, Ph.D. We experience the world not as it is, but as we expect it to be. From r.oostenveld at FCDONDERS.RU.NL Mon Aug 28 22:27:02 2006 From: r.oostenveld at FCDONDERS.RU.NL (Robert Oostenveld) Date: Mon, 28 Aug 2006 22:27:02 +0200 Subject: read in EEProbe cnts In-Reply-To: <563D12B4-B4C5-49A3-A4D8-01CE15B0F763@fcdonders.ru.nl> Message-ID: Hi Dorothea, >> „ Invalid MEX-file '\\fieldtrip-20060802\private >> \read_eep_cnt.dll': Unzulässiger Zugriff auf einen >> Speicherbereich. “ (Unauthorized access to memory) >> >> I should add that I am not specifying the begin and end sample of >> the data. Some more comments: the read_eep_cnt mex file consists of a small snippet of c-code that uses a reading function from a c-library from ANT. Although the c-code for the read_eep_cnt fiunction is open source and available (see http://oase.uci.kun.nl/~roberto/index.php/ eeprobe/), the low-level functions in the c-library from ANT are not available. Therefore I cannot fix the functions. Please contact ANT and tell them to fix the problems with the Matlab support of their data format and/or to make an open source version of their library available. In this case, the problem is probably either related to not specifying the begin and end sample of the data segment that you want to read, or is related to imcompatible matlab/mex-file versions. I suggest that you follow up on Christians suggestions. You could also try reading the data from begsample 1 to endsample 1 (i.e. one sample, which should be in the file always). best Robert From r.oostenveld at FCDONDERS.RU.NL Mon Aug 28 23:20:21 2006 From: r.oostenveld at FCDONDERS.RU.NL (Robert Oostenveld) Date: Mon, 28 Aug 2006 23:20:21 +0200 Subject: read in EEProbe data In-Reply-To: Message-ID: Hi Dorothea On 4 Aug 2006, at 11:27, Hämmerer, Dorothea wrote: > I want to read in EEProbe files to work on them with fieldtrip. > > Is there somebody who has already done that who could tell me which > information of what files I shall read in? One comment on a more general level: in fieldtrip you do not have to do something specifically to read data in the EEProbe format. You can just follow the tutorial examples and documentation, and replace the datafile by yours (of course triggers will be different). The FieldTrip reading functions will automatically detect that it is EEProbe format, and use the appropriate low-level functions. So the functions that you really should be looking at are DEFINETRIAL and PREPROCESSING. I have added an example matlab script that demonstrates how to get started with fieldtrip and read data into matlab. You can find it at http://www2.ru.nl/fcdonders/fieldtrip/doku.php? id=fieldtrip:documentation:getting_started_with_reading_raw_eeg_or_meg_d ata In your case just replace the filename with your cnt file. best regards, Robert From r.oostenveld at FCDONDERS.RU.NL Tue Aug 29 16:59:16 2006 From: r.oostenveld at FCDONDERS.RU.NL (Robert Oostenveld) Date: Tue, 29 Aug 2006 16:59:16 +0200 Subject: channel mismatch In-Reply-To: Message-ID: Hi Harald, On 3 Aug 2006, at 16:22, Harald Stoegbauer wrote: > The problme is that the tfc-files form different subjects have > different > amount of channels due to artifact rejection. > ... > Is there a simple way to use only channels which are used in all > subjects ? All Fieldtrip functions in principle should support datasets with different input channels (i.e. only selecting the overlapping channels), but it seems that that is not yet supported in the FREQGRANDAVERAGE function. I have fixed that and will include the updated version in the FTP release tonight. thanks for reporting this bug Robert From r.oostenveld at FCDONDERS.RU.NL Tue Aug 29 23:46:25 2006 From: r.oostenveld at FCDONDERS.RU.NL (Robert Oostenveld) Date: Tue, 29 Aug 2006 23:46:25 +0200 Subject: clusterrandanalysis on scalar values + problem with topoplotER In-Reply-To: <001601c6c6b3$130506e0$43ccae83@fcdonders.nl> Message-ID: Dear Marco On 23 Aug 2006, at 14:53, Eric Maris wrote: >> 2) Is there a way to compute the null distribution by considering >> all possible reassignments of the conditions instead of the Monte >> Carlo approximation - in this case it would be feasible because >> all possible reassignments should be 2^9, right? > This is not possible with clusterrandanalysis. However, this is > possible with one of the new statistics functions in Fieldtrip that > will replace both clusterrandanalysis and sourcestatistics. The > function of interest for you is timelockstatistics, and you should > have a look at the help information for the lower-level function > statistics_montecarlo (which is called by timelockstatistics). > However, provided that you use more than 500 draws from the > permutation distribution, don’t expect major changes in the output. We have an in-house version of fieldtrip, and an external FTP version. The in-house version is always slightly more advanced than the external version. Even though the timelockstatistics function was already included in recent external fieldtrip versions (the daily zip files) on the Donders FTP server, I just noticed that the underlying statistics_montecarlo function that Eric is referring to was still missing from the zip file. I have now also tagged that function (and some further subfunctions on which it depends) to be released in the external fieldtrip release. You should be able to use the timelockstatistics function with both the montecarlo and the complete permutation (cfg.numrandomization='all') based estimaes for the cluster statistics. I hope it works with the new function, if not then don't hesitate to contact us. Robert From P.PRAAMSTRA at BHAM.AC.UK Wed Aug 30 13:19:31 2006 From: P.PRAAMSTRA at BHAM.AC.UK (Dr Peter Praamstra) Date: Wed, 30 Aug 2006 12:19:31 +0100 Subject: tfc timecourse In-Reply-To: Message-ID: Hi Robert, you helpfully suggested how I can extract the timecourse of activity in a given freq band from TFC representations: > Doe maar > plot(freq.freq, '.') > en lees de index van de beta frequentie af (index=nummer staat langs > x-as, de fysieke frequentie langs y-as). Het freq.freq veld > beschrijft de frequentie as in de data (net als freq.time en > freq.label de twee andere assen beschrijven). > Vervolgens kun je > plot(freq.time, freq.powspctrm(chanindx, freqindx, :)) % voor 1 > kanaal, of > plot(freq.time, freq.powspctrm( :, freqindx, :)) % voor > alle kanalen > doen en krijg je power (vertikaal) tegen tijd (horizontaal). > Alternatief kun je natuurlijk ook naar > plot(freq.time, sqrt(freq.powspctrm(chanindx, freqindx, :))) > kijken voor de absolute amplitude in plaats van power (sqrt(pow) > =amplitude). However, freq and freq.freq seem to be undefined variables. Is that due to the TFCs being imported from BESA rather than generated in FT? If so, any suggestions as to how else to proceed? (know this is trivial for proficient matlab users, but possibly relevant for other BESA/FT users). wirh best wishes, Peter Praamstra From marie at PSY.GLA.AC.UK Wed Aug 30 15:06:30 2006 From: marie at PSY.GLA.AC.UK (Marie Smith) Date: Wed, 30 Aug 2006 14:06:30 +0100 Subject: Postdoctoral Research Assistant position Message-ID: UNIVERSITY OF GLASGOW CENTRE FOR COGNITIVE NEURO IMAGING DEPARTMENT OF PSYCHOLOGY Postdoctoral Research Assistant £25633 - £31525 per annum REF #12426/DPF/A3 Applications are invited for a Postdoctoral Research Assistant to work with Professor Philippe Schyns, Dr Klaus Kessler and Dr Marie Smith on a BBSRC funded project ‘Cortical Networks for Flexible Organisations’, which is aimed at providing a flow-chart of information processing within the cortical networks associated with the integration of facial features during face categorisation tasks, such as gender and expression. Under the guidance of the grant holders you will have the opportunity to: contribute to the design of event-related MEG experiments; collect the data with a state of the art MEG system; apply cutting edge techniques to analyse brain signals in the time and frequency domain; solve the inverse problem in order to identify processing networks; and reverse correlate brain activity with facial features. Finally, this will also give you the opportunity to practice your skills in writing scientific articles for high impact journals. For three years you will be part of a successful team of researchers in Glasgow who work on this and related topics. This post is available from 1 October 2006. You will be qualified, with a PhD, or equivalent, in cognitive neuroscience or a related discipline. You will also have experience of running psychophysical, cognitive and brainimaging experiments, with experience in MEG and/or EEG date collection and analysis. You will have excellent programming skills, particularly with MATLAB and will be experienced in image processing, signal analysis in the time and frequency domain, the inverse-problem and beamforming / source localisation methods. Finally you should have a strong interest in pursuing a research career. Informal enquiries may be made to Professor P Schyns, (+44 (0)141 330 4937; p.schyns at psy.gla.ac.uk Dr Klaus Kessler (+44 (0)141 330 4774; k.kessler at psy.gla.ac.uk) or Dr Marie Smith (+44 (0)141 330 3987; m.smith at psy.gla.ac.uk). For further details about the post and how to apply: see our web site at http://www.psy.gla.ac.uk/jobs.php or contact Ms Lynsay McGinlay, Department of Psychology, University of Glasgow, G12 8QQ (+44 (0)141 330 3986, e-mail l.mcginlay at psy.gla.ac.uk or the University web site at www.gla.ac.uk Closing Date : September 21st 2006 -------------- next part -------------- An HTML attachment was scrubbed... URL: From r.oostenveld at FCDONDERS.RU.NL Thu Aug 31 21:07:11 2006 From: r.oostenveld at FCDONDERS.RU.NL (Robert Oostenveld) Date: Thu, 31 Aug 2006 21:07:11 +0200 Subject: tfc timecourse In-Reply-To: <44F58253.16835.C429F3@P.PRAAMSTRA.Bham.ac.uk> Message-ID: On 30 Aug 2006, at 13:19, Dr Peter Praamstra wrote: > However, freq and freq.freq seem to be undefined variables. Is that > due to the TFCs being > imported from BESA rather than generated in FT? If so, any > suggestions as to how else to > proceed? > > (know this is trivial for proficient matlab users, but possibly > relevant for other BESA/FT > users). Hi Peter, In the documentation and in demo scripts I always use "freq" to indicate a data structure that contains frequence decomposed data (i.e. the output of freqanalysis in FT). The variable that I indicated with "freq" could be called differently in your Matlab session. From the FT-BESA documentation at http://www2.ru.nl/ fcdonders/fieldtrip/doku.php? id=fieldtrip:documentation:integrating_with_besa > For example, you can read in event-related potential data using > > timelock = besa2fieldtrip('filename.avr'); > > or a time-frequency estimate of power using > > freq = besa2fieldtrip('filename.tfc'); I hope this helps, Robert From r.oostenveld at FCDONDERS.RU.NL Thu Aug 31 22:33:51 2006 From: r.oostenveld at FCDONDERS.RU.NL (Robert Oostenveld) Date: Thu, 31 Aug 2006 22:33:51 +0200 Subject: Filtering In-Reply-To: <1157032724.44f6eb14e9662@webmail.technion.ac.il> Message-ID: Hi Vladimir, On 31 Aug 2006, at 15:58, litvak at techunix.technion.ac.il wrote: > Another question I have (you may post the answer to the list or put > it in the > FAQ if you want) is how do I translate from BESA filter settings > (like 6 db/Oct > or 12 db/Oct) to filter order in FT? I took a DSP course a couple > of years ago > but all memory of this faded by now. The filter order for the Butterworth filter (filttype='but') is different from that of the FIR filters. For the Butterworth, you can look here (http://www.answers.com/topic/butterworth-filter#after_ad2) for full details. Furthermore, in the Matlab signal processing toolbox you can also find a filter design tool (a.o.). Type "help butter" and "help butord" on the command line for more background. Furthermore, on thefieldtrip website -> documentation -> example scripts -> at the bottom you will see http://www2.ru.nl/fcdonders/fieldtrip/doku.php? id=fieldtrip:documentation:determine_the_filter_characteristics which gives you some hands on tricks to determine it yourself. The frequency response plots can be compared to the figs on the external website: to translate the frequency response (expressed as power, not amplitude) to decibel -> 10^-0.3 = -3 dB, and in general 10^-x = -10*x dB. best Robert P.S. note that a Nst order filter applied in both directions (cfg.XXfiltdir='twopass') effectively corresponds to an 2xNth order filter, since you filter twice. P.P.S. to summarise: "4th order"+"twopass" (which are the defaults) corresponds to 2x4x6 = 48dB/octave, so that is pretty steep.