Hi Mark:
Thanks - this is nice and clear. One follow-up question though: When you use featquery, you don't need to translate between standard and native space, do you?
-Christina
________________________________________
From: FSL - FMRIB's Software Library [[log in to unmask]] on behalf of Mark Jenkinson [[log in to unmask]]
Sent: Saturday, October 25, 2014 1:57 PM
To: [log in to unmask]
Subject: Re: [FSL] Extracting Individual Time Series Over Time
Dear Christina,
> I'm wondering if Kevin is asking a slightly different question than you answered. I have posted the question I think he's asking in the past, and never got an answer.
I'm sorry to hear that you never had a response. I found it difficult to follow Kevin's email, so I'm grateful for your clarification.
> Your answer allows you to use fslmeants to get a group-level timeseries, but all that returns is the average activation for each subject, as a single value, not as a function of time. In fact at the group level, calling the output of fslmeants a "time series" is really a misnomer.
That is correct and our use of "time series" is indeed a convenience, but an inaccurate one.
> If I'm not mistaken, what is really wanted is: can you get the average time series for the group, presumably for a given mask and condition. This would entail say, specifying: " I want to see the average time series for EV-1, across subjects, drawn out to n seconds, or n TRs." Loads of papers display this information, but I've never found a good way to get this info in FSL.
I can describe how to get the original time series data from each subject, but it isn't specific to any particular EV. So I'm not sure if this is the answer to your question or not. Maybe you want to see a form of average model fit for a particular COPE (EV).
> I know that if you use fslmeants at the individual bold level, you can get time-series values that are genuinely across time. However, let's say your condition of interest is randomly intermixed with other conditions within a single bold. Then to get the average timeseries for the desired EV, you'd have to identify which TRs in each bold correspond to that EV and (I guess) average the TR values corresponding to the desired condition.What's more, if you ran a number of such bolds for each subject, then you are averaging both within and across bolds.
Are you wanting to generate a peri-stimulus plot instead?
This is what we would describe for a plot that shows activation for a single stimulus period, where everything is referenced to the stimulus onset time. This is easy to do at the single subject level, and this data can be averaged over subjects if desired.
> Is this a kosher strategy?
There are two things that make sense to me: (i) average of the raw timeseries and (ii) average of the peri-stimulus plots.
> More to the point, since it is such a common thing to want when publishing results, I'm surprised FSL doesn't offer a function for this.
It is true that this could be a lot simpler. However, what you need to do in either of the cases is the following:
- transform your desired group-mask into the native space for each subject
- use fslmeants to extract the average timecourse, or use featquery to generate peri-stimulus data
- average the results across subjects using matlab, excel, python, spss or your favourite tool for dealing with non-imaging data (and generates plots with such tools)
All the best,
Mark
> Thanks for your help...
> -Christina Fales
|