quote:
Hi Dan,
It seems like one or more subject's image may have gotten messed up when warping to template or when its read into PLS to create the data matrices. I assume you are doing event-related fMRI? If so, you run a quick script to identify the potential subject(s) who have a problem
in matlab in the directory where your data reside type (exclude stuff after % since its comments):
d=dir('*fMRIdatamat.mat) %creates a struc array with the file names for all subjects
for i=1:numel(d) %loop across subjects
load(d(i).name) %load in each subject's datamat
disp(d(i).name) % display the file name so you know who is in
length(st_coords) %this is a vector that tells you how many brain voxels PLS thinks there is per volume for this subject
pause %pause the loop, you will need hit any key to continue
end %end the loop
you should compare the st_coords across subjects. Most will be fairly close with 500-600 elements different. What you are looking for is the subject who has a length = 0 or very tiny compare to the rest.
FYI, st_coords comes from a binary mask that is used to eliminate the zeros from the data matrix and read in only brain data. The coords are the actual matrix location for each voxel that has data.
If this is not the problem, then you may need to check the image orientation for each subject, but we can do this if this loop solution does not work.
Randy
Randy,
This were worked a treat, thanks.
You were spot on - it turns out that one of my timeseries had been corrupted during the registration process.
Thanks again,
Dan.