Differences

This shows you the differences between two versions of the page.

Link to this comparison view

script_1 [2013/05/07 19:20] (current)
admin created
Line 1: Line 1:
 +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 +% What this script does:
 +% 1. Sets all baselines to the last 30 sec of the original baselines coded as ones ('1')
 +% 2. Removes some conditions we are not interested in (markers between 111 and 139, stress test)
 +% 3. Removes the baseline before the stress test
 +% 4. Removes the final baseline
 +% 5. Re-numbers the baselines before the films originally numbered as '1' according to the film number it preceeds
 +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  
 +clear all; % Clear all variables in the workspace
 +
 +batch=textread('Batch41.m','%s'); % Read the batch file with all EDFs
 +
 +status=mkdir('baselines_30s'); % Create a new folder for modified timing files
 +
 +for i=1:length(batch) % Repeat for all timing files corresponding to EDFs in the batch
 +
 +    edfname=batch{i,:}; % Full pathname of the current EDF file
 +
 +    [PATH,NAME,EXT] = fileparts(edfname); % Split up the pathname to get the filename and extension
 +
 +    eval(NAME); % Evaluate the timing file 'NAME.m' to create the variable T in the workspace
 +
 +    ind=T(:,1)==1; % Find indices of all baselines (coded as '1' in the original timing files)
 +
 +    T2=T; % Create the resulting timing variable
 +
 +    T2(ind,:)=[T(ind,1) T(ind,3)-30 T(ind,3) 30*ones(sum(ind),1)]; % Set all baselines to the last 30 sec of the original baselines
 +
 +    stress_ind=T(:,1)>=111 & T(:,1)<=139; % Find the stress test condition (markers between 111 and 139)
 +
 +    if ~isempty(stress_ind) % If anything was found ...
 +        stress_baseline=find(stress_ind,1,'first')-1; % ... find also the baseline before the stress test ...
 +        stress_ind(stress_baseline)=[]; % ... remove it, too. At first in the index of all normal baselines to make it shorter
 +        T2(stress_baseline,:)=[]; % Then remove the stress baseline itself
 +        T2(stress_ind,:)=[]; % Then remove all stress conditions
 +    end;    
 +
 +    T2(end,:)=[]; % Remove the final baseline
 +
 +    % Recode the baselines ...
 +    for j=1:size(T2,1)-1
 +        if T2(j,1)==1
 +            T2(j,1)=T2(j+1,1)+300; % ... via assigning them the respective film number plus 300
 +        end;
 +    end;    
 +
 +    % Open a file for saving the resulting timing files
 +    fid = fopen(['.\baselines_30s\' NAME '.m'], 'w');
 +
 +    fprintf(fid,'%s\r\n','T = [...'); % Print the first line of the timing file
 +
 +    for j=1:size(T2,1)-1 % Print all lines except the first and the last one
 +        fprintf(fid, '%d\t%6.4f\t%6.4f\t%6.4f%s\r\n', T2(j,1), T2(j,2), T2(j,3), T2(j,4), ';...');
 +    end;
 +
 +    % Print the last line
 +    fprintf(fid, '%d\t%6.4f\t%6.4f\t%6.4f%s\r\n', T2(end,1), T2(end,2), T2(end,3), T2(end,4), '];');
 +
 +    fclose(fid); % Close file
 +
 +end;
script_1.txt · Last modified: 2013/05/07 19:20 by admin
You are here: homescript_1