Skip to main content
  • Home
  • Development
  • Documentation
  • Donate
  • Operational login
  • Browse the archive

swh logo
SoftwareHeritage
Software
Heritage
Archive
Features
  • Search

  • Downloads

  • Save code now

  • Add forge now

  • Help

https://github.com/RaymondLab/Code
25 June 2024, 13:39:08 UTC
  • Code
  • Branches (12)
  • Releases (0)
  • Visits
    • Branches
    • Releases
    • HEAD
    • refs/heads/Calibration
    • refs/heads/Calibration2
    • refs/heads/Master
    • refs/heads/VerticalTracking
    • refs/heads/code_generalization
    • refs/heads/consolidation_project_241B
    • refs/heads/local_configuration_241B
    • refs/heads/revert-2-consolidation_project_241B
    • refs/heads/rig241b_driftfix_sign
    • refs/heads/smr_to_smrx
    • refs/heads/tracking_dev
    • refs/tags/v1.0.0
    No releases to show
  • 30dc58e
  • /
  • Projects
  • /
  • Jaydev - Double Experiment Summary Plots
  • /
  • DoubleExpmtSummary.m
Raw File Download Save again
Take a new snapshot of a software origin

If the archived software origin currently browsed is not synchronized with its upstream version (for instance when new commits have been issued), you can explicitly request Software Heritage to take a new snapshot of it.

Use the form below to proceed. Once a request has been submitted and accepted, it will be processed as soon as possible. You can then check its processing state by visiting this dedicated page.
swh spinner

Processing "take a new snapshot" request ...

To reference or cite the objects present in the Software Heritage archive, permalinks based on SoftWare Hash IDentifiers (SWHIDs) must be used.
Select below a type of object currently browsed in order to display its associated SWHID and permalink.

  • content
  • directory
  • revision
  • snapshot
origin badgecontent badge
swh:1:cnt:ccd6481de9434ed95b4e5a00985452b76c09ba05
origin badgedirectory badge
swh:1:dir:1a551b3d8f1a0d669337233ad0b50af764616b3b
origin badgerevision badge
swh:1:rev:f562b26a59ee1fe18ddbdd35eb072e822e4e0f63
origin badgesnapshot badge
swh:1:snp:5000b5dcf61aa2cac987bbe6af9204d011668dda

This interface enables to generate software citations, provided that the root directory of browsed objects contains a citation.cff or codemeta.json file.
Select below a type of object currently browsed in order to generate citations for them.

  • content
  • directory
  • revision
  • snapshot
Generate software citation in BibTex format (requires biblatex-software package)
Generating citation ...
Generate software citation in BibTex format (requires biblatex-software package)
Generating citation ...
Generate software citation in BibTex format (requires biblatex-software package)
Generating citation ...
Generate software citation in BibTex format (requires biblatex-software package)
Generating citation ...
Tip revision: f562b26a59ee1fe18ddbdd35eb072e822e4e0f63 authored by Katie Li on 14 November 2022, 22:02:35 UTC
Matlab files on D241B setup
Tip revision: f562b26
DoubleExpmtSummary.m
%% Prompt User for Variables
clear;clc;close all
warning off
prompt = {'Path: ', 'R^2 Threshold: ', 'Bad Segment Count: ', 'Removed Data Percentage: ', 'Gain Type (1 = norm, 2 = raw}', 'Training Block Size (5 or 10 minute, 1 for OKR)'};
dlgTitle = "Input: ";
dims = [1 40];
definput = {'F:\1 Jaydev Bhateja\Cohort 4\Data\Pretraining', ...
            '.35', ...
            '2', ...
            '40', ...
            '1', ...
            '10'};

answer = inputdlg(prompt, dlgTitle, dims, definput);
b = 1;

%% Find Correct data
disp(['Data Location:   ', answer{1}])
excels = dir([answer{1} '\**\*.xlsx']);

% Remove Templates
excels(~contains({excels.name}, {'Exp-D'}), :) = [];

DRexcels = excels(contains({excels.name}, {'Dark Resting'}), :);
excels(contains({excels.name}, {'Dark Resting'}), :) = [];

GDGUexcels = excels(contains({excels.name}, {'1 Hz Gain Down'}), :);
excels(contains({excels.name}, {'1 Hz Gain Down'}), :) = [];

VESTexcels = excels(contains({excels.name}, {'Vestibular'}), :);
excels(contains({excels.name}, {'Vestibular'}), :) = [];

if isempty(DRexcels) && isempty(GDGUexcels) && isempty(VESTexcels)
    a = 4;
else
    a = 1;
end

GUexcels = excels;


for i = a:4
    
    switch i
        case 1
            mList = DRexcels;
            Label = 'Dark Resting';
            disp([Label, '...'])
        case 2
            mList = VESTexcels;
            Label = 'Vestibular';
            disp([Label, '...'])
        case 3
            mList = GDGUexcels;
            Label = 'Gain Down & Gain Up ';
            disp([Label, '...'])
        case 4
            if answer{6} == '1'
                mList = GUexcels;
                Label = 'OKR';
            else
                mList = GUexcels;
                Label = 'Gain Up';
            end
            disp([Label, '...'])
    end
    
    figure('units','normalized','outerposition',[0 0 1 1])
    ha = tight_subplot(1,1,[.03 .03],[.05 .03],[.03 .03]);
    v = 1;
    sumStruct = [];
    LegCell = {};
    
    for j = 1:length(mList)
        
        dataTable = readtable(fullfile(mList(j).folder, mList(j).name));
        disp(['     ', mList(j).name])
        
        % Update name for plotting ease
        newName = mList(j).name(18:19);
        if contains(mList(j).name, 'Redo')
            newName = [newName, 'r'];
        else
            newName = [newName, ' '];
        end
        mList(j).name = newName;
        sumStruct(j).name = newName;
        
        % Gather relevant data depending on block size
        
        if answer{6} == '10'
            bls = 1:3;
            mids = 9:11;
            ends = 17:19;
            plotSegs = ~logical(sum(dataTable.TimePoint == [5, 15, 25, 35, 45, 55], 2));
        elseif answer{6} == '5'
            bls = 1:3;
            mids = 15:17;
            ends = 30:32;
            plotSegs = ~logical(sum(dataTable.TimePoint == [2.5, 5, 7.5, 12.5, 15, 17.5, 22.5, 25, 27.5, 32.5, 35, 37.5, 42.5, 45, 47.5, 52.5, 55, 57.5], 2));
            plotSegs(18) = 0;
            if length(plotSegs) > 33
                plotSegs(33:end) = [];
            end
            if i == 4
                plotSegs(19:end) = [];
            end
        elseif answer{6} == '1'
            bls = 2:4;
            ends = 59:61;
            plotSegs = 1:62;
        end
        
        sacFrac = dataTable.saccadeFrac;
        GoodSegs = double(sacFrac < str2double(answer{4})/100); 
        Rsquare = dataTable.rsquare;
        GoodSegs(bls) = double(Rsquare(bls) > str2double(answer{2})) .* double(sacFrac(bls) < str2double(answer{4})/100);
        if i == 4
            if answer{6} == '1'
                GoodSegs(ends) = double(Rsquare(ends) > str2double(answer{2})) .* double(sacFrac(ends) < str2double(answer{4})/100);
            else
                GoodSegs(mids) = double(Rsquare(mids) > str2double(answer{2})) .* double(sacFrac(mids) < str2double(answer{4})/100);
            end
        else
            GoodSegs(ends) = double(Rsquare(ends) > str2double(answer{2})) .* double(sacFrac(ends) < str2double(answer{4})/100);
        end
        Gains = dataTable.eyeHgain .* GoodSegs; % Eliminate bad segments from mean calculation (will be eliminated from plot too)
        TimePoints = dataTable.TimePoint;
        
        % Baseline Averages
        meanGain_Baseline = sum(Gains(bls) .* (1-sacFrac(bls)) .* GoodSegs(bls)) / sum((1-sacFrac(bls)) .* GoodSegs(bls));
        meanRsquare_Baseline = sum(Rsquare(bls) .* (1-sacFrac(bls))) / sum((1-sacFrac(bls)));
        
        % Middle Averages
        if str2num(answer{6}) ~= 1
            meanGain_Mid = sum(Gains(mids) .* (1-sacFrac(mids)) .* GoodSegs(mids)) / sum((1-sacFrac(mids)) .* GoodSegs(mids));
            meanRsquare_Mid = sum(Rsquare(mids) .* (1-sacFrac(mids))) / sum((1-sacFrac(bls)));
        end
        
        % End Averages
        if answer{6} == '10'
            if length(Gains) > 18
                meanGain_End = sum(Gains(ends) .* (1-sacFrac(ends)) .* GoodSegs(ends)) / sum((1-sacFrac(ends)) .* GoodSegs(ends));
                meanRsquare_End = sum(Rsquare(ends) .* (1-sacFrac(ends)) .* GoodSegs(ends)) / sum((1-sacFrac(ends)) .* GoodSegs(ends));

                % Combine (for long expmt)
                Gains   = [Gains(1:3);   meanGain_Baseline;    Gains(4:11);   meanGain_Mid;    Gains(12:end);   meanGain_End];
                Rsquare = [Rsquare(1:3); meanRsquare_Baseline; Rsquare(4:11); meanRsquare_Mid; Rsquare(12:end); meanRsquare_End];
                plotSegsAll = logical([plotSegs(1:3); 1; plotSegs(4:11); 1; plotSegs(12:end); 1]);
            else
                % Combine (for short expmt)
                Gains =   [Gains(1:3);   meanGain_Baseline;    Gains(4:11);   meanGain_Mid];
                Rsquare = [Rsquare(1:3); meanRsquare_Baseline; Rsquare(4:11); meanRsquare_Mid];
                plotSegsAll = logical([plotSegs(1:3); 1; plotSegs(4:11); 1]);
            end
        elseif answer{6} == '5'
            if ~(isnan(Gains(30)))
                meanGain_End = sum(Gains(ends) .* (1-sacFrac(ends)) .* GoodSegs(ends)) / sum((1-sacFrac(ends)) .* GoodSegs(ends));
                meanRsquare_End = sum(Rsquare(ends) .* (1-sacFrac(ends))) / sum((1-sacFrac(ends)));

                % Combine (for long expmt)
                Gains   = [Gains(1:3);   meanGain_Baseline;    Gains(4:17);   meanGain_Mid;    Gains(19:32);   meanGain_End];
                Rsquare = [Rsquare(1:3); meanRsquare_Baseline; Rsquare(4:17); meanRsquare_Mid; Rsquare(19:32); meanRsquare_End];
                plotSegsAll = logical([plotSegs(1:3); 1; plotSegs(4:17); 1; plotSegs(19:end); 1]);
            else
                % Combine (for short expmt)
                Gains =   [Gains(1:3);   meanGain_Baseline;    Gains(4:17);   meanGain_Mid];
                Rsquare = [Rsquare(1:3); meanRsquare_Baseline; Rsquare(4:17); meanRsquare_Mid];
                plotSegsAll = logical([plotSegs(1:3); 1; plotSegs(4:17); 1]);
            end
        elseif answer{6} == '1'
            meanGain_End = sum(Gains(ends) .* (1-sacFrac(ends)) .* GoodSegs(ends)) / sum((1-sacFrac(ends)) .* GoodSegs(ends));
            meanRsquare_End = sum(Rsquare(ends) .* (1-sacFrac(ends))) / sum((1-sacFrac(ends)));
            Gains = [Gains(1:4); meanGain_Baseline; Gains(5:61); meanGain_End; Gains(62)];
            Rsquare = [Rsquare(1:4); meanRsquare_Baseline; Rsquare(5:61); meanRsquare_End; Rsquare(62)];
            plotSegsAll = plotSegs;
        end
        
        % Save gains from all experiments
        sumStruct(j).blGains = meanGain_Baseline;
        sumStruct(j).blrSquare = meanRsquare_Baseline;
        sumStruct(j).endrSquare = meanRsquare_End;
        
       %% Save things for excel
       
        name{b} = sumStruct(j).name;
        expmtType{b}  = Label;
        
        if answer{6} == '10'
            
            t0a_rawGain(b) = Gains(1);
            t0b_rawGain(b) = Gains(2);
            t0c_rawGain(b) = Gains(3);
            tbl_rawGain(b) = Gains(4);
            t5_rawGain(b)  = Gains(5);
            t10_rawGain(b) = Gains(6);
            t15_rawGain(b) = Gains(7);
            t20_rawGain(b) = Gains(8);
            t25_rawGain(b) = Gains(9);
            t30a_rawGain(b) = Gains(10);
            t30b_rawGain(b) = Gains(11);
            t30c_rawGain(b) = Gains(12);
            tmid_rawGain(b) = Gains(13);
            try
                t35_rawGain(b) = Gains(14);
                t40_rawGain(b) = Gains(15);
                t45_rawGain(b) = Gains(16);
                t50_rawGain(b) = Gains(17);
                t55_rawGain(b) = Gains(18);
                t60a_rawGain(b) = Gains(19);
                t60b_rawGain(b) = Gains(20);
                t60c_rawGain(b) = Gains(21);
                tend_rawGain(b) = Gains(22);
            catch
                t35_rawGain(b) = NaN;
                t40_rawGain(b) = NaN;
                t45_rawGain(b) = NaN;
                t50_rawGain(b) = NaN;
                t55_rawGain(b) = NaN;
                t60a_rawGain(b) = NaN;
                t60b_rawGain(b) = NaN;
                t60c_rawGain(b) = NaN;
                tend_rawGain(b) = NaN;
            end

            t0a_nrmGain(b) = Gains(1) ./ meanGain_Baseline;
            t0b_nrmGain(b) = Gains(2) ./ meanGain_Baseline;
            t0c_nrmGain(b) = Gains(3) ./ meanGain_Baseline;
            tbl_nrmGain(b) = Gains(4) ./ meanGain_Baseline;
            t5_nrmGain(b) = Gains(5) ./ meanGain_Baseline;
            t10_nrmGain(b) = Gains(6) ./ meanGain_Baseline;
            t15_nrmGain(b) = Gains(7) ./ meanGain_Baseline;
            t20_nrmGain(b) = Gains(8) ./ meanGain_Baseline;
            t25_nrmGain(b) = Gains(9) ./ meanGain_Baseline;
            t30a_nrmGain(b) = Gains(10) ./ meanGain_Baseline;
            t30b_nrmGain(b) = Gains(11) ./ meanGain_Baseline;
            t30c_nrmGain(b) = Gains(12) ./ meanGain_Baseline;
            tmid_nrmGain(b) = Gains(13) ./ meanGain_Baseline;
            try
                t35_nrmGain(b) = Gains(14) ./ meanGain_Baseline;
                t40_nrmGain(b) = Gains(15) ./ meanGain_Baseline;
                t45_nrmGain(b) = Gains(16) ./ meanGain_Baseline;
                t50_nrmGain(b) = Gains(17) ./ meanGain_Baseline;
                t55_nrmGain(b) = Gains(18) ./ meanGain_Baseline;
                t60a_nrmGain(b) = Gains(19) ./ meanGain_Baseline;
                t60b_nrmGain(b) = Gains(20) ./ meanGain_Baseline;
                t60c_nrmGain(b) = Gains(21) ./ meanGain_Baseline;
                tend_nrmGain(b) = Gains(22) ./ meanGain_Baseline;
            catch
                t35_nrmGain(b) = NaN;
                t40_nrmGain(b) = NaN;
                t45_nrmGain(b) = NaN;
                t50_nrmGain(b) = NaN;
                t55_nrmGain(b) = NaN;
                t60a_nrmGain(b) = NaN;
                t60b_nrmGain(b) = NaN;
                t60c_nrmGain(b) = NaN;
                tend_nrmGain(b) = NaN;
            end

            t0a_rSquare(b) = Rsquare(1);
            t0b_rSquare(b) = Rsquare(2);
            t0c_rSquare(b) = Rsquare(3);
            tbl_rSquare(b) = Rsquare(4);
            t5_rSquare(b) = Rsquare(5);
            t10_rSquare(b) = Rsquare(6);
            t15_rSquare(b) = Rsquare(7);
            t20_rSquare(b) = Rsquare(8);
            t25_rSquare(b) = Rsquare(9);
            t30a_rSquare(b) = Rsquare(10);
            t30b_rSquare(b) = Rsquare(11);
            t30c_rSquare(b) = Rsquare(12);
            tmid_rSquare(b) = Rsquare(13);
            try
                t35_rSquare(b) = Rsquare(14);
                t40_rSquare(b) = Rsquare(15);
                t45_rSquare(b) = Rsquare(16);
                t50_rSquare(b) = Rsquare(17);
                t55_rSquare(b) = Rsquare(18);
                t60a_rSquare(b) = Rsquare(19);
                t60b_rSquare(b) = Rsquare(20);
                t60c_rSquare(b) = Rsquare(21);
                tend_rSquare(b) = Rsquare(22);
            catch
                t35_rSquare(b) = NaN;
                t40_rSquare(b) = NaN;
                t45_rSquare(b) = NaN;
                t50_rSquare(b) = NaN;
                t55_rSquare(b) = NaN;
                t60a_rSquare(b) = NaN;
                t60b_rSquare(b) = NaN;
                t60c_rSquare(b) = NaN;
                tend_rSquare(b) = NaN;
            end

            t0a_goodsegm(b) = GoodSegs(1);
            t0b_goodsegm(b) = GoodSegs(2);
            t0c_goodsegm(b) = GoodSegs(3);
            t5_goodsegm(b) = GoodSegs(4);
            t10_goodsegm(b) = GoodSegs(5);
            t15_goodsegm(b) = GoodSegs(6);
            t20_goodsegm(b) = GoodSegs(7);
            t25_goodsegm(b) = GoodSegs(8);
            t30a_goodsegm(b) = GoodSegs(9);
            t30b_goodsegm(b) = GoodSegs(10);
            t30c_goodsegm(b) = GoodSegs(11);
            try
                t35_goodsegm(b) = GoodSegs(12);
                t40_goodsegm(b) = GoodSegs(13);
                t45_goodsegm(b) = GoodSegs(14);
                t50_goodsegm(b) = GoodSegs(15);
                t55_goodsegm(b) = GoodSegs(16);
                t60a_goodsegm(b) = GoodSegs(17);
                t60b_goodsegm(b) = GoodSegs(18);
                t60c_goodsegm(b) = GoodSegs(19);

            catch
                t35_goodsegm(b) = 0;
                t40_goodsegm(b) = 0;
                t45_goodsegm(b) = 0;
                t50_goodsegm(b) = 0;
                t55_goodsegm(b) = 0;
                t60a_goodsegm(b) = 0;
                t60b_goodsegm(b) = 0;
                t60c_goodsegm(b) = 0;
            end
            
        elseif answer{6} == '5'
            
            t0a_rawGain(b) = Gains(1);
            t0b_rawGain(b) = Gains(2);
            t0c_rawGain(b) = Gains(3);
            tbl_rawGain(b) = Gains(4);
            t5_rawGain(b)  = (Gains(5) + Gains(7))/2;
            t10_rawGain(b) = Gains(8);
            t15_rawGain(b) = (Gains(9) + Gains(11))/2;
            t20_rawGain(b) = Gains(12);
            t25_rawGain(b) = (Gains(13) + Gains(15))/2;
            t30a_rawGain(b) = Gains(16);
            t30b_rawGain(b) = Gains(17);
            t30c_rawGain(b) = Gains(18);
            tmid_rawGain(b) = Gains(19);
            try
                t35_rawGain(b) = (Gains(20) + Gains(22))/2;
                t40_rawGain(b) = Gains(23);
                t45_rawGain(b) = (Gains(24) + Gains(26))/2;
                t50_rawGain(b) = Gains(27);
                t55_rawGain(b) = (Gains(28) + Gains(30))/2;
                t60a_rawGain(b) = Gains(31);
                t60b_rawGain(b) = Gains(32);
                t60c_rawGain(b) = Gains(33);
                tend_rawGain(b) = Gains(34);
            catch
                t35_rawGain(b) = NaN;
                t40_rawGain(b) = NaN;
                t45_rawGain(b) = NaN;
                t50_rawGain(b) = NaN;
                t55_rawGain(b) = NaN;
                t60a_rawGain(b) = NaN;
                t60b_rawGain(b) = NaN;
                t60c_rawGain(b) = NaN;
                tend_rawGain(b) = NaN;
            end

            t0a_nrmGain(b) = Gains(1) ./ meanGain_Baseline;
            t0b_nrmGain(b) = Gains(2) ./ meanGain_Baseline;
            t0c_nrmGain(b) = Gains(3) ./ meanGain_Baseline;
            tbl_nrmGain(b) = Gains(4) ./ meanGain_Baseline;
            t5_nrmGain(b) = (Gains(5) + Gains(7))/2 ./ meanGain_Baseline;
            t10_nrmGain(b) = Gains(8) ./ meanGain_Baseline;
            t15_nrmGain(b) = (Gains(9) + Gains(11))/2 ./ meanGain_Baseline;
            t20_nrmGain(b) = Gains(12) ./ meanGain_Baseline;
            t25_nrmGain(b) = (Gains(13) + Gains(15)) ./ meanGain_Baseline;
            t30a_nrmGain(b) = Gains(16) ./ meanGain_Baseline;
            t30b_nrmGain(b) = Gains(17) ./ meanGain_Baseline;
            t30c_nrmGain(b) = Gains(18) ./ meanGain_Baseline;
            tmid_nrmGain(b) = Gains(19) ./ meanGain_Baseline;
            try
                t35_nrmGain(b) = (Gains(20) + Gains(22))/2 ./ meanGain_Baseline;
                t40_nrmGain(b) = Gains(23) ./ meanGain_Baseline;
                t45_nrmGain(b) = (Gains(24) + Gains(26))/2 ./ meanGain_Baseline;
                t50_nrmGain(b) = Gains(27) ./ meanGain_Baseline;
                t55_nrmGain(b) = (Gains(28) + Gains(30))/2 ./ meanGain_Baseline;
                t60a_nrmGain(b) = Gains(31) ./ meanGain_Baseline;
                t60b_nrmGain(b) = Gains(32) ./ meanGain_Baseline;
                t60c_nrmGain(b) = Gains(33) ./ meanGain_Baseline;
                tend_nrmGain(b) = Gains(34) ./ meanGain_Baseline;
            catch
                t35_nrmGain(b) = NaN;
                t40_nrmGain(b) = NaN;
                t45_nrmGain(b) = NaN;
                t50_nrmGain(b) = NaN;
                t55_nrmGain(b) = NaN;
                t60a_nrmGain(b) = NaN;
                t60b_nrmGain(b) = NaN;
                t60c_nrmGain(b) = NaN;
                tend_nrmGain(b) = NaN;
            end

            t0a_rSquare(b) = Rsquare(1);
            t0b_rSquare(b) = Rsquare(2);
            t0c_rSquare(b) = Rsquare(3);
            tbl_rSquare(b) = Rsquare(4);
            t5_rSquare(b) = (Rsquare(5) + Rsquare(7))/2;
            t10_rSquare(b) = Rsquare(8);
            t15_rSquare(b) = (Rsquare(9) + Rsquare(11))/2;
            t20_rSquare(b) = Rsquare(12);
            t25_rSquare(b) = (Rsquare(13) + Rsquare(15))/2;
            t30a_rSquare(b) = Rsquare(16);
            t30b_rSquare(b) = Rsquare(17);
            t30c_rSquare(b) = Rsquare(18);
            tmid_rSquare(b) = Rsquare(19);
            try
                t35_rSquare(b) = (Rsquare(20) + Rsquare(22))/2;
                t40_rSquare(b) = Rsquare(23);
                t45_rSquare(b) = (Rsquare(24) + Rsquare(26))/2;
                t50_rSquare(b) = Rsquare(27);
                t55_rSquare(b) = (Rsquare(28) + Rsquare(30))/2;
                t60a_rSquare(b) = Rsquare(31);
                t60b_rSquare(b) = Rsquare(32);
                t60c_rSquare(b) = Rsquare(33);
                tend_rSquare(b) = Rsquare(34);
            catch
                t35_rSquare(b) = NaN;
                t40_rSquare(b) = NaN;
                t45_rSquare(b) = NaN;
                t50_rSquare(b) = NaN;
                t55_rSquare(b) = NaN;
                t60a_rSquare(b) = NaN;
                t60b_rSquare(b) = NaN;
                t60c_rSquare(b) = NaN;
                tend_rSquare(b) = NaN;
            end

            t0a_goodsegm(b) = GoodSegs(1);
            t0b_goodsegm(b) = GoodSegs(2);
            t0c_goodsegm(b) = GoodSegs(3);
            t5_goodsegm(b) = (sacFrac((5)) + sacFrac((7)))/2  > str2double(answer{4})/100;
            t10_goodsegm(b) = GoodSegs(8);
            t15_goodsegm(b) = (sacFrac((9)) + sacFrac((11)))/2 > str2double(answer{4})/100;
            t20_goodsegm(b) = GoodSegs(12);
            t25_goodsegm(b) = (sacFrac((13)) + sacFrac((15)))/2 > str2double(answer{4})/100;
            t30a_goodsegm(b) = GoodSegs(16);
            t30b_goodsegm(b) = GoodSegs(17);
            t30c_goodsegm(b) = GoodSegs(18);
            try
                t35_goodsegm(b) = (sacFrac((20)) + sacFrac((22)))/2 > str2double(answer{4})/100;
                t40_goodsegm(b) = GoodSegs(23);
                t45_goodsegm(b) = (sacFrac((24)) + sacFrac((26)))/2 > str2double(answer{4})/100;
                t50_goodsegm(b) = GoodSegs(27);
                t55_goodsegm(b) = (sacFrac((28)) + sacFrac((30)))/2 > str2double(answer{4})/100;
                t60a_goodsegm(b) = GoodSegs(31);
                t60b_goodsegm(b) = GoodSegs(32);
                t60c_goodsegm(b) = GoodSegs(33);

            catch
                t35_goodsegm(b) = 0;
                t40_goodsegm(b) = 0;
                t45_goodsegm(b) = 0;
                t50_goodsegm(b) = 0;
                t55_goodsegm(b) = 0;
                t60a_goodsegm(b) = 0;
                t60b_goodsegm(b) = 0;
                t60c_goodsegm(b) = 0;
            end
        
        elseif answer{6} == '1'
            
            t0_rawGainVOR(b) = Gains(1);
            t1_rawGainOKR(b) = Gains(2);
            t2_rawGainOKR(b) = Gains(3);
            t3_rawGainOKR(b) = Gains(4);
            tbl_rawGainOKR(b) = Gains(5);
            t4_rawGainOKR(b) = Gains(6);
            t5_rawGainOKR(b) = Gains(7);
            t6_rawGainOKR(b) = Gains(8);
            t7_rawGainOKR(b) = Gains(9);
            t8_rawGainOKR(b) = Gains(10);
            t9_rawGainOKR(b) = Gains(11);
            t10_rawGainOKR(b) = Gains(12);
            t11_rawGainOKR(b) = Gains(13);
            t12_rawGainOKR(b) = Gains(14);
            t13_rawGainOKR(b) = Gains(15);
            t14_rawGainOKR(b) = Gains(16);
            t15_rawGainOKR(b) = Gains(17);
            t16_rawGainOKR(b) = Gains(18);
            t17_rawGainOKR(b) = Gains(19);
            t18_rawGainOKR(b) = Gains(20);
            t19_rawGainOKR(b) = Gains(21);
            t20_rawGainOKR(b) = Gains(22);
            t21_rawGainOKR(b) = Gains(23);
            t22_rawGainOKR(b) = Gains(24);
            t23_rawGainOKR(b) = Gains(25);
            t24_rawGainOKR(b) = Gains(26);
            t25_rawGainOKR(b) = Gains(27);
            t26_rawGainOKR(b) = Gains(28);
            t27_rawGainOKR(b) = Gains(29);
            t28_rawGainOKR(b) = Gains(30);
            t29_rawGainOKR(b) = Gains(31);
            t30_rawGainOKR(b) = Gains(32);
            t31_rawGainOKR(b) = Gains(33);
            t32_rawGainOKR(b) = Gains(34);
            t33_rawGainOKR(b) = Gains(35);
            t34_rawGainOKR(b) = Gains(36);
            t35_rawGainOKR(b) = Gains(37);
            t36_rawGainOKR(b) = Gains(38);
            t37_rawGainOKR(b) = Gains(39);
            t38_rawGainOKR(b) = Gains(40);
            t39_rawGainOKR(b) = Gains(41);
            t40_rawGainOKR(b) = Gains(42);
            t41_rawGainOKR(b) = Gains(43);
            t42_rawGainOKR(b) = Gains(44);
            t43_rawGainOKR(b) = Gains(45);
            t44_rawGainOKR(b) = Gains(46);
            t45_rawGainOKR(b) = Gains(47);
            t46_rawGainOKR(b) = Gains(48);
            t47_rawGainOKR(b) = Gains(49);
            t48_rawGainOKR(b) = Gains(50);
            t49_rawGainOKR(b) = Gains(51);
            t50_rawGainOKR(b) = Gains(52);
            t51_rawGainOKR(b) = Gains(53);
            t52_rawGainOKR(b) = Gains(54);
            t53_rawGainOKR(b) = Gains(55);
            t54_rawGainOKR(b) = Gains(56);
            t55_rawGainOKR(b) = Gains(57);
            t56_rawGainOKR(b) = Gains(58);
            t57_rawGainOKR(b) = Gains(59);
            t58_rawGainOKR(b) = Gains(60);
            t59_rawGainOKR(b) = Gains(61);
            t60_rawGainOKR(b) = Gains(62);
            tend_rawGainOKR(b) = Gains(63);
            t60_rawGainVOR(b) = Gains(64);
            
            t0_nrmGainVOR(b) = Gains(1) ./ meanGain_Baseline;
            t1_nrmGainOKR(b) = Gains(2) ./ meanGain_Baseline;
            t2_nrmGainOKR(b) = Gains(3) ./ meanGain_Baseline;
            t3_nrmGainOKR(b) = Gains(4) ./ meanGain_Baseline;
            tbl_nrmGainOKR(b) = Gains(5) ./ meanGain_Baseline;
            t4_nrmGainOKR(b) = Gains(6) ./ meanGain_Baseline;
            t5_nrmGainOKR(b) = Gains(7) ./ meanGain_Baseline;
            t6_nrmGainOKR(b) = Gains(8) ./ meanGain_Baseline;
            t7_nrmGainOKR(b) = Gains(9) ./ meanGain_Baseline;
            t8_nrmGainOKR(b) = Gains(10) ./ meanGain_Baseline;
            t9_nrmGainOKR(b) = Gains(11) ./ meanGain_Baseline;
            t10_nrmGainOKR(b) = Gains(12) ./ meanGain_Baseline;
            t11_nrmGainOKR(b) = Gains(13) ./ meanGain_Baseline;
            t12_nrmGainOKR(b) = Gains(14) ./ meanGain_Baseline;
            t13_nrmGainOKR(b) = Gains(15) ./ meanGain_Baseline;
            t14_nrmGainOKR(b) = Gains(16) ./ meanGain_Baseline;
            t15_nrmGainOKR(b) = Gains(17) ./ meanGain_Baseline;
            t16_nrmGainOKR(b) = Gains(18) ./ meanGain_Baseline;
            t17_nrmGainOKR(b) = Gains(19) ./ meanGain_Baseline;
            t18_nrmGainOKR(b) = Gains(20) ./ meanGain_Baseline;
            t19_nrmGainOKR(b) = Gains(21) ./ meanGain_Baseline;
            t20_nrmGainOKR(b) = Gains(22) ./ meanGain_Baseline;
            t21_nrmGainOKR(b) = Gains(23) ./ meanGain_Baseline;
            t22_nrmGainOKR(b) = Gains(24) ./ meanGain_Baseline;
            t23_nrmGainOKR(b) = Gains(25) ./ meanGain_Baseline;
            t24_nrmGainOKR(b) = Gains(26) ./ meanGain_Baseline;
            t25_nrmGainOKR(b) = Gains(27) ./ meanGain_Baseline;
            t26_nrmGainOKR(b) = Gains(28) ./ meanGain_Baseline;
            t27_nrmGainOKR(b) = Gains(29) ./ meanGain_Baseline;
            t28_nrmGainOKR(b) = Gains(30) ./ meanGain_Baseline;
            t29_nrmGainOKR(b) = Gains(31) ./ meanGain_Baseline;
            t30_nrmGainOKR(b) = Gains(32) ./ meanGain_Baseline;
            t31_nrmGainOKR(b) = Gains(33) ./ meanGain_Baseline;
            t32_nrmGainOKR(b) = Gains(34) ./ meanGain_Baseline;
            t33_nrmGainOKR(b) = Gains(35) ./ meanGain_Baseline;
            t34_nrmGainOKR(b) = Gains(36) ./ meanGain_Baseline;
            t35_nrmGainOKR(b) = Gains(37) ./ meanGain_Baseline;
            t36_nrmGainOKR(b) = Gains(38) ./ meanGain_Baseline;
            t37_nrmGainOKR(b) = Gains(39) ./ meanGain_Baseline;
            t38_nrmGainOKR(b) = Gains(40) ./ meanGain_Baseline;
            t39_nrmGainOKR(b) = Gains(41) ./ meanGain_Baseline;
            t40_nrmGainOKR(b) = Gains(42) ./ meanGain_Baseline;
            t41_nrmGainOKR(b) = Gains(43) ./ meanGain_Baseline;
            t42_nrmGainOKR(b) = Gains(44) ./ meanGain_Baseline;
            t43_nrmGainOKR(b) = Gains(45) ./ meanGain_Baseline;
            t44_nrmGainOKR(b) = Gains(46) ./ meanGain_Baseline;
            t45_nrmGainOKR(b) = Gains(47) ./ meanGain_Baseline;
            t46_nrmGainOKR(b) = Gains(48) ./ meanGain_Baseline;
            t47_nrmGainOKR(b) = Gains(49) ./ meanGain_Baseline;
            t48_nrmGainOKR(b) = Gains(50) ./ meanGain_Baseline;
            t49_nrmGainOKR(b) = Gains(51) ./ meanGain_Baseline;
            t50_nrmGainOKR(b) = Gains(52) ./ meanGain_Baseline;
            t51_nrmGainOKR(b) = Gains(53) ./ meanGain_Baseline;
            t52_nrmGainOKR(b) = Gains(54) ./ meanGain_Baseline;
            t53_nrmGainOKR(b) = Gains(55) ./ meanGain_Baseline;
            t54_nrmGainOKR(b) = Gains(56) ./ meanGain_Baseline;
            t55_nrmGainOKR(b) = Gains(57) ./ meanGain_Baseline;
            t56_nrmGainOKR(b) = Gains(58) ./ meanGain_Baseline;
            t57_nrmGainOKR(b) = Gains(59) ./ meanGain_Baseline;
            t58_nrmGainOKR(b) = Gains(60) ./ meanGain_Baseline;
            t59_nrmGainOKR(b) = Gains(61) ./ meanGain_Baseline;
            t60_nrmGainOKR(b) = Gains(62) ./ meanGain_Baseline;
            tend_nrmGainOKR(b) = Gains(63) ./ meanGain_Baseline;
            t60_nrmGainVOR(b) = Gains(64) ./ meanGain_Baseline;
            
            t0_RsquareVOR(b) = Rsquare(1);
            t1_RsquareOKR(b) = Rsquare(2);
            t2_RsquareOKR(b) = Rsquare(3);
            t3_RsquareOKR(b) = Rsquare(4);
            tbl_RsquareOKR(b) = Rsquare(5);
            t4_RsquareOKR(b) = Rsquare(6);
            t5_RsquareOKR(b) = Rsquare(7);
            t6_RsquareOKR(b) = Rsquare(8);
            t7_RsquareOKR(b) = Rsquare(9);
            t8_RsquareOKR(b) = Rsquare(10);
            t9_RsquareOKR(b) = Rsquare(11);
            t10_RsquareOKR(b) = Rsquare(12);
            t11_RsquareOKR(b) = Rsquare(13);
            t12_RsquareOKR(b) = Rsquare(14);
            t13_RsquareOKR(b) = Rsquare(15);
            t14_RsquareOKR(b) = Rsquare(16);
            t15_RsquareOKR(b) = Rsquare(17);
            t16_RsquareOKR(b) = Rsquare(18);
            t17_RsquareOKR(b) = Rsquare(19);
            t18_RsquareOKR(b) = Rsquare(20);
            t19_RsquareOKR(b) = Rsquare(21);
            t20_RsquareOKR(b) = Rsquare(22);
            t21_RsquareOKR(b) = Rsquare(23);
            t22_RsquareOKR(b) = Rsquare(24);
            t23_RsquareOKR(b) = Rsquare(25);
            t24_RsquareOKR(b) = Rsquare(26);
            t25_RsquareOKR(b) = Rsquare(27);
            t26_RsquareOKR(b) = Rsquare(28);
            t27_RsquareOKR(b) = Rsquare(29);
            t28_RsquareOKR(b) = Rsquare(30);
            t29_RsquareOKR(b) = Rsquare(31);
            t30_RsquareOKR(b) = Rsquare(32);
            t31_RsquareOKR(b) = Rsquare(33);
            t32_RsquareOKR(b) = Rsquare(34);
            t33_RsquareOKR(b) = Rsquare(35);
            t34_RsquareOKR(b) = Rsquare(36);
            t35_RsquareOKR(b) = Rsquare(37);
            t36_RsquareOKR(b) = Rsquare(38);
            t37_RsquareOKR(b) = Rsquare(39);
            t38_RsquareOKR(b) = Rsquare(40);
            t39_RsquareOKR(b) = Rsquare(41);
            t40_RsquareOKR(b) = Rsquare(42);
            t41_RsquareOKR(b) = Rsquare(43);
            t42_RsquareOKR(b) = Rsquare(44);
            t43_RsquareOKR(b) = Rsquare(45);
            t44_RsquareOKR(b) = Rsquare(46);
            t45_RsquareOKR(b) = Rsquare(47);
            t46_RsquareOKR(b) = Rsquare(48);
            t47_RsquareOKR(b) = Rsquare(49);
            t48_RsquareOKR(b) = Rsquare(50);
            t49_RsquareOKR(b) = Rsquare(51);
            t50_RsquareOKR(b) = Rsquare(52);
            t51_RsquareOKR(b) = Rsquare(53);
            t52_RsquareOKR(b) = Rsquare(54);
            t53_RsquareOKR(b) = Rsquare(55);
            t54_RsquareOKR(b) = Rsquare(56);
            t55_RsquareOKR(b) = Rsquare(57);
            t56_RsquareOKR(b) = Rsquare(58);
            t57_RsquareOKR(b) = Rsquare(59);
            t58_RsquareOKR(b) = Rsquare(60);
            t59_RsquareOKR(b) = Rsquare(61);
            t60_RsquareOKR(b) = Rsquare(62);
            tend_RsquareOKR(b) = Rsquare(63);
            t60_RsquareVOR(b) = Rsquare(64);
            
            t0_goodsegmVOR(b) = GoodSegs(1);
            t1_goodsegmOKR(b) = GoodSegs(2);
            t2_goodsegmOKR(b) = GoodSegs(3);
            t3_goodsegmOKR(b) = GoodSegs(4);
            t4_goodsegmOKR(b) = GoodSegs(5);
            t5_goodsegmOKR(b) = GoodSegs(6);
            t6_goodsegmOKR(b) = GoodSegs(7);
            t7_goodsegmOKR(b) = GoodSegs(8);
            t8_goodsegmOKR(b) = GoodSegs(9);
            t9_goodsegmOKR(b) = GoodSegs(10);
            t10_goodsegmOKR(b) = GoodSegs(11);
            t11_goodsegmOKR(b) = GoodSegs(12);
            t12_goodsegmOKR(b) = GoodSegs(13);
            t13_goodsegmOKR(b) = GoodSegs(14);
            t14_goodsegmOKR(b) = GoodSegs(15);
            t15_goodsegmOKR(b) = GoodSegs(16);
            t16_goodsegmOKR(b) = GoodSegs(17);
            t17_goodsegmOKR(b) = GoodSegs(18);
            t18_goodsegmOKR(b) = GoodSegs(19);
            t19_goodsegmOKR(b) = GoodSegs(20);
            t20_goodsegmOKR(b) = GoodSegs(21);
            t21_goodsegmOKR(b) = GoodSegs(22);
            t22_goodsegmOKR(b) = GoodSegs(23);
            t23_goodsegmOKR(b) = GoodSegs(24);
            t24_goodsegmOKR(b) = GoodSegs(25);
            t25_goodsegmOKR(b) = GoodSegs(26);
            t26_goodsegmOKR(b) = GoodSegs(27);
            t27_goodsegmOKR(b) = GoodSegs(28);
            t28_goodsegmOKR(b) = GoodSegs(29);
            t29_goodsegmOKR(b) = GoodSegs(30);
            t30_goodsegmOKR(b) = GoodSegs(31);
            t31_goodsegmOKR(b) = GoodSegs(32);
            t32_goodsegmOKR(b) = GoodSegs(33);
            t33_goodsegmOKR(b) = GoodSegs(34);
            t34_goodsegmOKR(b) = GoodSegs(35);
            t35_goodsegmOKR(b) = GoodSegs(36);
            t36_goodsegmOKR(b) = GoodSegs(37);
            t37_goodsegmOKR(b) = GoodSegs(38);
            t38_goodsegmOKR(b) = GoodSegs(39);
            t39_goodsegmOKR(b) = GoodSegs(40);
            t40_goodsegmOKR(b) = GoodSegs(41);
            t41_goodsegmOKR(b) = GoodSegs(42);
            t42_goodsegmOKR(b) = GoodSegs(43);
            t43_goodsegmOKR(b) = GoodSegs(44);
            t44_goodsegmOKR(b) = GoodSegs(45);
            t45_goodsegmOKR(b) = GoodSegs(46);
            t46_goodsegmOKR(b) = GoodSegs(47);
            t47_goodsegmOKR(b) = GoodSegs(48);
            t48_goodsegmOKR(b) = GoodSegs(49);
            t49_goodsegmOKR(b) = GoodSegs(50);
            t50_goodsegmOKR(b) = GoodSegs(51);
            t51_goodsegmOKR(b) = GoodSegs(52);
            t52_goodsegmOKR(b) = GoodSegs(53);
            t53_goodsegmOKR(b) = GoodSegs(54);
            t54_goodsegmOKR(b) = GoodSegs(55);
            t55_goodsegmOKR(b) = GoodSegs(56);
            t56_goodsegmOKR(b) = GoodSegs(57);
            t57_goodsegmOKR(b) = GoodSegs(58);
            t58_goodsegmOKR(b) = GoodSegs(59);
            t59_goodsegmOKR(b) = GoodSegs(60);
            t60_goodsegmOKR(b) = GoodSegs(61);
            t60_goodsegmVOR(b) = GoodSegs(62);
            
        end
        
        b = b+1;
        
        %% Rel Gain or Raw Gain
        if answer{5} == '1'
            Gains = Gains ./ meanGain_Baseline;
        end
        
        %% Filters
        % r squared Filter Beginning
        if ((meanRsquare_Baseline < str2double(answer{2})) || (meanRsquare_End < str2double(answer{2})))
            Gains(:) = NaN;
            sumStruct(j).removed = 1;
        else 
            sumStruct(j).removed = 0;
        end
        
        % Block % Filter
        sumStruct(j).BadSegCnt = sum(sacFrac(plotSegs) > str2double(answer{4})/100);
        if sumStruct(j).BadSegCnt > str2double(answer{3})
            Gains(:) = NaN;
            sumStruct(j).removed = 1;    
        end
        
        if isnan(sumStruct(j).blGains)
            sumStruct(j).removed = 1;
        end
        
        for q = 1:length(Gains)
            if Gains(q) == 0
                Gains(q) = NaN;
            end
        end
        
        %% Plot 
        segAmt = length(Gains(plotSegsAll));
        
        if isnan(Gains(4))
            goodExpmt(b) = 0;
            sumStruct(j).removed = 1;
            plot(1:segAmt, Gains(plotSegsAll)); hold on
        else
            goodExpmt(b) = 1;
            A(v) =  plot(1:segAmt, Gains(plotSegsAll)); hold on
            v = v + 1;
        end
        
        scatter(1:segAmt, Gains(plotSegsAll), 5, 'k', 'filled'); hold on
        
    end
    
    %% Universal Plot Cosmetics
    title(Label)
    if answer{5} == '1'
        ylabel('Normalized Gain')
        ylim([.4 2.5])
        if answer{6} == '1'
            ylim([0.4, 4.0])
        else
            ylim([0.4, 2.5])
        end
    else
        ylabel('Raw Gain')
        if answer{6} == '1'
            ylim([0, 2.5])
        else
            ylim([0.0, 1.5])
        end
    end
    
    %xlabel('tmpts')
    box off
    xticks(1:segAmt)
    if length(xticks) > 60
        xticklabels({'VOR', '1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12', '13', '14', '15', '16', ... 
            '17', '18', '19', '20', '21', '22', '23', '24', '25', '26', '27', '28', '29', '30', '31', '32', ... 
            '33', '34', '35', '36', '37', '38', '39', '40', '41', '42', '43', '44', '45', '46', '47', '48', ... 
            '49', '50', '51', '52', '53', '54', '55', '56', '57', '58', '59', '60', 'VOR'})
    else
        xticklabels({'0', '0', '0', 'Beg', '10', '20', '30', '30', '30', 'Mid', '40', '50', '60', '60', '60', 'End'})
    end
    xlim([.8 segAmt+.2])
    
    
    
    %% Text Marking
    % Orientation Parameters
    textGap = .06;
    if answer{6} == '1'
        yAlign = 9;
    else
        yAlign = 2.5;
    end
    
    xAlignTop = max(ylim)-.04;
    FontSize = 9;
    
    % Make Text Notes - Keep spacing in mind!! Not handled by matlab, so I
    % do it manually.

    for z = 1:length(sumStruct)
        if ~sumStruct(z).removed
            Gstrnum = num2str(sumStruct(z).blGains);
            if (isnan(sumStruct(z).blGains))
                Gstrnum = ['0'];
            end
            if (length(Gstrnum) == 1)
                Gstrnum = [Gstrnum, '.00'];
            end
            RstrnumBL = num2str(sumStruct(z).blrSquare);
            if (isnan(sumStruct(z).blrSquare))
                RstrnumBL = ['0'];
            end
            if (length(RstrnumBL) == 1)
                RstrnumBL = [RstrnumBL, '.00'];
            end
            RstrnumEnd = num2str(sumStruct(z).endrSquare);
            if (isnan(sumStruct(z).endrSquare))
                RstrnumEnd = ['0'];
            end
            if (length(RstrnumEnd) == 1)
                RstrnumEnd = [RstrnumEnd, '.00'];
            end
            BCstrnum = num2str(sumStruct(z).BadSegCnt);
            %text(yAlign, xAlignTop-(k*textGap), [sumStruct(z).name, '   ', Gstrnum(1:4), '   ', Rstrnum(1:4), '   ', BCstrnum], 'FontSize', FontSize)
            LegCell(z) = {[sumStruct(z).name, '   ', Gstrnum(1:4), '   ', RstrnumBL(1:4), '   ', RstrnumEnd(1:4), '   ', BCstrnum]};
            %k = k + 1;
        end
    end
    
    for z = length(LegCell):-1:1
        if isempty(LegCell{z})
            LegCell(z) = [];
        end
    end
    q = legend(A, LegCell, 'Location', 'northwest', 'FontSize', FontSize, 'Box', 'off');
    
    
    k = 0;
    text(yAlign, xAlignTop-(k*textGap), 'Removed', 'FontSize', FontSize+2)
    k = k + 1;
    text(yAlign, xAlignTop-(k*textGap), 'nm   gain    r^2 Beg    r^2 End    BadSegs', 'FontSize', FontSize)
    k = k + 1;
    
    for z = 1:length(sumStruct)
        if sumStruct(z).removed
            Gstrnum = num2str(sumStruct(z).blGains);
            if (isnan(sumStruct(z).blGains))
                Gstrnum = ['0'];
            end
            if (length(Gstrnum) == 1)
                Gstrnum = [Gstrnum, '.00'];
            end
            RstrnumBL = num2str(sumStruct(z).blrSquare);
            if (isnan(sumStruct(z).blrSquare))
                RstrnumBL = ['0'];
            end
            if (length(RstrnumBL) == 1)
                RstrnumBL = [RstrnumBL, '.00'];
            end
            RstrnumEnd = num2str(sumStruct(z).endrSquare);
            if (isnan(sumStruct(z).endrSquare))
                RstrnumEnd = ['0'];
            end
            if (length(RstrnumEnd) == 1)
                RstrnumEnd = [RstrnumEnd, '.00'];
            end
            BCstrnum = num2str(sumStruct(z).BadSegCnt);
            text(yAlign, xAlignTop-(k*textGap), [sumStruct(z).name, '   ', Gstrnum(1:4), '    ', RstrnumBL(1:4), '        ', RstrnumEnd(1:4), '        ', BCstrnum], 'FontSize', FontSize)
            %LegCell(z) = {[sumStruct(z).name, '   ', Gstrnum(1:4), '   ', Rstrnum(1:4), '   ', BCstrnum]};
            k = k + 1;
        end
    end

    k = 0;
    text(yAlign+yAlign, xAlignTop-(k*textGap), 'Parameters', 'FontSize', FontSize+2)
    k = k + 1;
    text(yAlign+yAlign, xAlignTop-(k*textGap), ['r^2 Cutoff: ' answer{2}], 'FontSize', FontSize)
    k = k + 1;
    text(yAlign+yAlign, xAlignTop-(k*textGap), ['Seg cnt Cutoff: ', answer{3}], 'FontSize', FontSize)
    k = k + 1;
    text(yAlign+yAlign, xAlignTop-(k*textGap), ['Seg % Cutoff: ', answer{4}], 'FontSize', FontSize)
    
    savefig([Label, '.fig'])
end
                      
    if answer{6} == '1'
        T = table(name', expmtType', goodExpmt(2:end)', ...
            t0_nrmGainVOR', t1_nrmGainOKR', t2_nrmGainOKR', t3_nrmGainOKR', tbl_nrmGainOKR', t4_nrmGainOKR', t5_nrmGainOKR', t6_nrmGainOKR', ... 
            t7_nrmGainOKR', t8_nrmGainOKR', t9_nrmGainOKR', t10_nrmGainOKR', t11_nrmGainOKR', t12_nrmGainOKR', t13_nrmGainOKR', t14_nrmGainOKR', ... 
            t15_nrmGainOKR', t16_nrmGainOKR', t17_nrmGainOKR', t18_nrmGainOKR', t19_nrmGainOKR', t20_nrmGainOKR', t21_nrmGainOKR', t22_nrmGainOKR', ... 
            t23_nrmGainOKR', t24_nrmGainOKR', t25_nrmGainOKR', t26_nrmGainOKR', t27_nrmGainOKR', t28_nrmGainOKR', t29_nrmGainOKR', t30_nrmGainOKR', ... 
            t31_nrmGainOKR', t32_nrmGainOKR', t33_nrmGainOKR', t34_nrmGainOKR', t35_nrmGainOKR', t36_nrmGainOKR', t37_nrmGainOKR', t38_nrmGainOKR', ... 
            t39_nrmGainOKR', t40_nrmGainOKR', t41_nrmGainOKR', t42_nrmGainOKR', t43_nrmGainOKR', t44_nrmGainOKR', t45_nrmGainOKR', t46_nrmGainOKR', ... 
            t47_nrmGainOKR', t48_nrmGainOKR', t49_nrmGainOKR', t50_nrmGainOKR', t51_nrmGainOKR', t52_nrmGainOKR', t53_nrmGainOKR', t54_nrmGainOKR', ... 
            t55_nrmGainOKR', t56_nrmGainOKR', t57_nrmGainOKR', t58_nrmGainOKR', t59_nrmGainOKR', t60_nrmGainOKR', tend_nrmGainOKR', t60_nrmGainVOR', ... 
            t0_RsquareVOR', t1_RsquareOKR', t2_RsquareOKR', tbl_RsquareOKR', t3_RsquareOKR', t4_RsquareOKR', t5_RsquareOKR', t6_RsquareOKR', ... 
            t0_rawGainVOR', t1_rawGainOKR', t2_rawGainOKR', tbl_rawGainOKR', t3_rawGainOKR', t4_rawGainOKR', t5_rawGainOKR', t6_rawGainOKR', ... 
            t7_rawGainOKR', t8_rawGainOKR', t9_rawGainOKR', t10_rawGainOKR', t11_rawGainOKR', t12_rawGainOKR', t13_rawGainOKR', t14_rawGainOKR', ... 
            t15_rawGainOKR', t16_rawGainOKR', t17_rawGainOKR', t18_rawGainOKR', t19_rawGainOKR', t20_rawGainOKR', t21_rawGainOKR', t22_rawGainOKR', ... 
            t23_rawGainOKR', t24_rawGainOKR', t25_rawGainOKR', t26_rawGainOKR', t27_rawGainOKR', t28_rawGainOKR', t29_rawGainOKR', t30_rawGainOKR', ... 
            t31_rawGainOKR', t32_rawGainOKR', t33_rawGainOKR', t34_rawGainOKR', t35_rawGainOKR', t36_rawGainOKR', t37_rawGainOKR', t38_rawGainOKR', ... 
            t39_rawGainOKR', t40_rawGainOKR', t41_rawGainOKR', t42_rawGainOKR', t43_rawGainOKR', t44_rawGainOKR', t45_rawGainOKR', t46_rawGainOKR', ... 
            t47_rawGainOKR', t48_rawGainOKR', t49_rawGainOKR', t50_rawGainOKR', t51_rawGainOKR', t52_rawGainOKR', t53_rawGainOKR', t54_rawGainOKR', ... 
            t55_rawGainOKR', t56_rawGainOKR', t57_rawGainOKR', t58_rawGainOKR', t59_rawGainOKR', t60_rawGainOKR', tend_rawGainOKR', t60_rawGainVOR', ... 
            t7_RsquareOKR', t8_RsquareOKR', t9_RsquareOKR', t10_RsquareOKR', t11_RsquareOKR', t12_RsquareOKR', t13_RsquareOKR', t14_RsquareOKR', ... 
            t15_RsquareOKR', t16_RsquareOKR', t17_RsquareOKR', t18_RsquareOKR', t19_RsquareOKR', t20_RsquareOKR', t21_RsquareOKR', t22_RsquareOKR', ... 
            t23_RsquareOKR', t24_RsquareOKR', t25_RsquareOKR', t26_RsquareOKR', t27_RsquareOKR', t28_RsquareOKR', t29_RsquareOKR', t30_RsquareOKR', ... 
            t31_RsquareOKR', t32_RsquareOKR', t33_RsquareOKR', t34_RsquareOKR', t35_RsquareOKR', t36_RsquareOKR', t37_RsquareOKR', t38_RsquareOKR', ... 
            t39_RsquareOKR', t40_RsquareOKR', t41_RsquareOKR', t42_RsquareOKR', t43_RsquareOKR', t44_RsquareOKR', t45_RsquareOKR', t46_RsquareOKR', ... 
            t47_RsquareOKR', t48_RsquareOKR', t49_RsquareOKR', t50_RsquareOKR', t51_RsquareOKR', t52_RsquareOKR', t53_RsquareOKR', t54_RsquareOKR', ... 
            t55_RsquareOKR', t56_RsquareOKR', t57_RsquareOKR', t58_RsquareOKR', t59_RsquareOKR', t60_RsquareOKR', tend_RsquareOKR', t60_RsquareVOR', ... 
            t0_goodsegmVOR', t1_goodsegmOKR', t2_goodsegmOKR', t3_goodsegmOKR', t4_goodsegmOKR', t5_goodsegmOKR', t6_goodsegmOKR', t7_goodsegmOKR', ... 
            t8_goodsegmOKR', t9_goodsegmOKR', t10_goodsegmOKR', t11_goodsegmOKR', t12_goodsegmOKR', t13_goodsegmOKR', t14_goodsegmOKR', ... 
            t15_goodsegmOKR', t16_goodsegmOKR', t17_goodsegmOKR', t18_goodsegmOKR', t19_goodsegmOKR', t20_goodsegmOKR', t21_goodsegmOKR', ... 
            t22_goodsegmOKR', t23_goodsegmOKR', t24_goodsegmOKR', t25_goodsegmOKR', t26_goodsegmOKR', t27_goodsegmOKR', t28_goodsegmOKR', ... 
            t29_goodsegmOKR', t30_goodsegmOKR', t31_goodsegmOKR', t32_goodsegmOKR', t33_goodsegmOKR', t34_goodsegmOKR', t35_goodsegmOKR', ... 
            t36_goodsegmOKR', t37_goodsegmOKR', t38_goodsegmOKR', t39_goodsegmOKR', t40_goodsegmOKR', t41_goodsegmOKR', t42_goodsegmOKR', ... 
            t43_goodsegmOKR', t44_goodsegmOKR', t45_goodsegmOKR', t46_goodsegmOKR', t47_goodsegmOKR', t48_goodsegmOKR', t49_goodsegmOKR', ... 
            t50_goodsegmOKR', t51_goodsegmOKR', t52_goodsegmOKR', t53_goodsegmOKR', t54_goodsegmOKR', t55_goodsegmOKR', t56_goodsegmOKR', ... 
            t57_goodsegmOKR', t58_goodsegmOKR', t59_goodsegmOKR', t60_goodsegmOKR', t60_goodsegmVOR', ...         
            'VariableNames', ...
            {'Name', 'expmtType', 'goodExpmt', ...
            't0_nrmGainVOR', 't1_nrmGainOKR', 't2_nrmGainOKR', 't3_nrmGainOKR', 'tbl_nrmGainOKR', 't4_nrmGainOKR', 't5_nrmGainOKR', 't6_nrmGainOKR', ... 
            't7_nrmGainOKR', 't8_nrmGainOKR', 't9_nrmGainOKR', 't10_nrmGainOKR', 't11_nrmGainOKR', 't12_nrmGainOKR', 't13_nrmGainOKR', 't14_nrmGainOKR', ... 
            't15_nrmGainOKR', 't16_nrmGainOKR', 't17_nrmGainOKR', 't18_nrmGainOKR', 't19_nrmGainOKR', 't20_nrmGainOKR', 't21_nrmGainOKR', 't22_nrmGainOKR', ... 
            't23_nrmGainOKR', 't24_nrmGainOKR', 't25_nrmGainOKR', 't26_nrmGainOKR', 't27_nrmGainOKR', 't28_nrmGainOKR', 't29_nrmGainOKR', 't30_nrmGainOKR', ... 
            't31_nrmGainOKR', 't32_nrmGainOKR', 't33_nrmGainOKR', 't34_nrmGainOKR', 't35_nrmGainOKR', 't36_nrmGainOKR', 't37_nrmGainOKR', 't38_nrmGainOKR', ... 
            't39_nrmGainOKR', 't40_nrmGainOKR', 't41_nrmGainOKR', 't42_nrmGainOKR', 't43_nrmGainOKR', 't44_nrmGainOKR', 't45_nrmGainOKR', 't46_nrmGainOKR', ... 
            't47_nrmGainOKR', 't48_nrmGainOKR', 't49_nrmGainOKR', 't50_nrmGainOKR', 't51_nrmGainOKR', 't52_nrmGainOKR', 't53_nrmGainOKR', 't54_nrmGainOKR', ... 
            't55_nrmGainOKR', 't56_nrmGainOKR', 't57_nrmGainOKR', 't58_nrmGainOKR', 't59_nrmGainOKR', 't60_nrmGainOKR', 'tend_nrmGainOKR', 't60_nrmGainVOR', ... 
            't0_rawGainVOR', 't1_rawGainOKR', 't2_rawGainOKR', 'tbl_rawGainOKR', 't3_rawGainOKR', 't4_rawGainOKR', 't5_rawGainOKR', 't6_rawGainOKR', ... 
            't7_rawGainOKR', 't8_rawGainOKR', 't9_rawGainOKR', 't10_rawGainOKR', 't11_rawGainOKR', 't12_rawGainOKR', 't13_rawGainOKR', 't14_rawGainOKR', ... 
            't15_rawGainOKR', 't16_rawGainOKR', 't17_rawGainOKR', 't18_rawGainOKR', 't19_rawGainOKR', 't20_rawGainOKR', 't21_rawGainOKR', 't22_rawGainOKR', ... 
            't23_rawGainOKR', 't24_rawGainOKR', 't25_rawGainOKR', 't26_rawGainOKR', 't27_rawGainOKR', 't28_rawGainOKR', 't29_rawGainOKR', 't30_rawGainOKR', ... 
            't31_rawGainOKR', 't32_rawGainOKR', 't33_rawGainOKR', 't34_rawGainOKR', 't35_rawGainOKR', 't36_rawGainOKR', 't37_rawGainOKR', 't38_rawGainOKR', ... 
            't39_rawGainOKR', 't40_rawGainOKR', 't41_rawGainOKR', 't42_rawGainOKR', 't43_rawGainOKR', 't44_rawGainOKR', 't45_rawGainOKR', 't46_rawGainOKR', ... 
            't47_rawGainOKR', 't48_rawGainOKR', 't49_rawGainOKR', 't50_rawGainOKR', 't51_rawGainOKR', 't52_rawGainOKR', 't53_rawGainOKR', 't54_rawGainOKR', ... 
            't55_rawGainOKR', 't56_rawGainOKR', 't57_rawGainOKR', 't58_rawGainOKR', 't59_rawGainOKR', 't60_rawGainOKR', 'tend_rawGainOKR', 't60_rawGainVOR', ... 
            't0_RsquareVOR', 't1_RsquareOKR', 't2_RsquareOKR', 'tbl_RsquareOKR', 't3_RsquareOKR', 't4_RsquareOKR', 't5_RsquareOKR', 't6_RsquareOKR', ... 
            't7_RsquareOKR', 't8_RsquareOKR', 't9_RsquareOKR', 't10_RsquareOKR', 't11_RsquareOKR', 't12_RsquareOKR', 't13_RsquareOKR', 't14_RsquareOKR', ... 
            't15_RsquareOKR', 't16_RsquareOKR', 't17_RsquareOKR', 't18_RsquareOKR', 't19_RsquareOKR', 't20_RsquareOKR', 't21_RsquareOKR', 't22_RsquareOKR', ... 
            't23_RsquareOKR', 't24_RsquareOKR', 't25_RsquareOKR', 't26_RsquareOKR', 't27_RsquareOKR', 't28_RsquareOKR', 't29_RsquareOKR', 't30_RsquareOKR', ... 
            't31_RsquareOKR', 't32_RsquareOKR', 't33_RsquareOKR', 't34_RsquareOKR', 't35_RsquareOKR', 't36_RsquareOKR', 't37_RsquareOKR', 't38_RsquareOKR', ... 
            't39_RsquareOKR', 't40_RsquareOKR', 't41_RsquareOKR', 't42_RsquareOKR', 't43_RsquareOKR', 't44_RsquareOKR', 't45_RsquareOKR', 't46_RsquareOKR', ... 
            't47_RsquareOKR', 't48_RsquareOKR', 't49_RsquareOKR', 't50_RsquareOKR', 't51_RsquareOKR', 't52_RsquareOKR', 't53_RsquareOKR', 't54_RsquareOKR', ... 
            't55_RsquareOKR', 't56_RsquareOKR', 't57_RsquareOKR', 't58_RsquareOKR', 't59_RsquareOKR', 't60_RsquareOKR', 'tend_RsquareOKR', 't60_RsquareVOR', ... 
            't0_goodsegmVOR', 't1_goodsegmOKR', 't2_goodsegmOKR', 't3_goodsegmOKR', 't4_goodsegmOKR', 't5_goodsegmOKR', 't6_goodsegmOKR', 't7_goodsegmOKR', ... 
            't8_goodsegmOKR', 't9_goodsegmOKR', 't10_goodsegmOKR', 't11_goodsegmOKR', 't12_goodsegmOKR', 't13_goodsegmOKR', 't14_goodsegmOKR', ... 
            't15_goodsegmOKR', 't16_goodsegmOKR', 't17_goodsegmOKR', 't18_goodsegmOKR', 't19_goodsegmOKR', 't20_goodsegmOKR', 't21_goodsegmOKR', ... 
            't22_goodsegmOKR', 't23_goodsegmOKR', 't24_goodsegmOKR', 't25_goodsegmOKR', 't26_goodsegmOKR', 't27_goodsegmOKR', 't28_goodsegmOKR', ... 
            't29_goodsegmOKR', 't30_goodsegmOKR', 't31_goodsegmOKR', 't32_goodsegmOKR', 't33_goodsegmOKR', 't34_goodsegmOKR', 't35_goodsegmOKR', ... 
            't36_goodsegmOKR', 't37_goodsegmOKR', 't38_goodsegmOKR', 't39_goodsegmOKR', 't40_goodsegmOKR', 't41_goodsegmOKR', 't42_goodsegmOKR', ... 
            't43_goodsegmOKR', 't44_goodsegmOKR', 't45_goodsegmOKR', 't46_goodsegmOKR', 't47_goodsegmOKR', 't48_goodsegmOKR', 't49_goodsegmOKR', ... 
            't50_goodsegmOKR', 't51_goodsegmOKR', 't52_goodsegmOKR', 't53_goodsegmOKR', 't54_goodsegmOKR', 't55_goodsegmOKR', 't56_goodsegmOKR', ... 
            't57_goodsegmOKR', 't58_goodsegmOKR', 't59_goodsegmOKR', 't60_goodsegmOKR', 't60_goodsegmVOR'});   
    else
        T = table(name', expmtType', goodExpmt(2:end)', ...
            t0a_nrmGain', t0b_nrmGain', t0c_nrmGain', tbl_nrmGain', t10_nrmGain', t20_nrmGain', t30a_nrmGain', t30b_nrmGain', t30c_nrmGain', tmid_nrmGain', t40_nrmGain', t50_nrmGain', t60a_nrmGain', t60b_nrmGain', t60c_nrmGain', tend_nrmGain', ...
            t0a_rawGain', t0b_rawGain', t0c_rawGain', tbl_rawGain', t10_rawGain', t20_rawGain', t30a_rawGain', t30b_rawGain', t30c_rawGain', tmid_rawGain', t40_rawGain', t50_rawGain', t60a_rawGain', t60b_rawGain', t60c_rawGain', tend_rawGain', ...
            t0a_rSquare', t0b_rSquare', t0c_rSquare', tbl_rSquare', t10_rSquare', t20_rSquare', t30a_rSquare', t30b_rSquare', t30c_rSquare', tmid_rSquare', t40_rSquare', t50_rSquare', t60a_rSquare', t60b_rSquare', t60c_rSquare', tend_rSquare', ...
            t0a_goodsegm', t0b_goodsegm', t0c_goodsegm',            t10_goodsegm', t20_goodsegm', t30a_goodsegm', t30b_goodsegm', t30c_goodsegm',           t40_goodsegm', t50_goodsegm', t60a_goodsegm', t60b_goodsegm', t60c_goodsegm', ...
            t5_nrmGain', t15_nrmGain', t25_nrmGain', t35_nrmGain', t45_nrmGain', t55_nrmGain', ...
            t5_rawGain', t15_rawGain', t25_rawGain', t35_rawGain', t45_rawGain', t55_rawGain', ...
            t5_rSquare', t15_rSquare', t25_rSquare', t35_rSquare', t45_rSquare', t55_rSquare', ...
            t5_goodsegm', t15_goodsegm', t25_goodsegm', t35_goodsegm', t45_goodsegm', t55_goodsegm', ...                           
            'VariableNames', ...
            {'Name', 'expmtType', 'goodExpmt', ...
            'N01', 'N02', 'N03', 'NBeg', 'N10', 'N20', 'N301', 'N302', 'N303', 'NMid', 'N40', 'N50', 'N601', 'N602', 'N603', 'NEnd', ...
            'R01', 'R02', 'R03', 'RBeg', 'R10', 'R20', 'R301', 'R302', 'R303', 'RMid', 'R40', 'R50', 'R601', 'R602', 'R603', 'REnd', ...
            't0a_rSquare', 't0b_rSquare', 't0c_rSquare', 'tbl_rSquare', 't10_rSquare', 't20_rSquare', 't30a_rSquare', 't30b_rSquare', 't30c_rSquare', 'tmid_rSquare', 't40_rSquare', 't50_rSquare', 't60a_rSquare', 't60b_rSquare', 't60c_rSquare', 'tend_rSquare', ...
            't0a_goodsegm', 't0b_goodsegm', 't0c_goodsegm',             't10_goodsegm', 't20_goodsegm', 't30a_goodsegm', 't30b_goodsegm', 't30c_goodseg',             't40_goodsegm', 't50_goodsegm', 't60a_goodsegm', 't60b_goodsegm', 't60c_goodsegm', ...
            'N5', 'N15', 'N25', 'N35', 'N45', 'N55', ...
            'R5', 'R15', 'R25', 'R35', 'R45', 'R55', ...
            't5_rSquare', 't15_rSquare', 't25_rSquare', 't35_rSquare', 't45_rSquare', 't55_rSquare', ...
            't5_goodsegm', 't15_goodsegm', 't25_goodsegm', 't35_goodsegm', 't45_goodsegm', 't55_goodsegm'});   
    end

writetable(T, 'AllMiceBigChart.xlsx')
    
cd(answer{1})

for d = 1:25
    
    if d < 10
        if any(contains(T.Name, ['0', num2str(d)]))
            filename = ['Mouse_', num2str(d), '.xlsx'];
            writetable(T(contains(T.Name, ['0', num2str(d)]), :), filename)
        end
        
    elseif any(contains(T.Name, num2str(d)))
        filename = ['Mouse_', num2str(d), '.xlsx'];
        writetable(T(contains(T.Name, [num2str(d)]), :), filename)
    end

end

if str2num(answer{6}) == 5
    for e = 1:10
        if any(contains(T.Name, [num2str(e), ' ']))
            filename = ['Mouse_', num2str(e), '.xlsx'];
            writetable(T(contains(T.Name, [num2str(e)]), :), filename)
        end
    end
end
    
disp('Done!')

back to top

Software Heritage — Copyright (C) 2015–2026, The Software Heritage developers. License: GNU AGPLv3+.
The source code of Software Heritage itself is available on our development forge.
The source code files archived by Software Heritage are available under their own copyright and licenses.
Terms of use: Archive access, API— Content policy— Contact— JavaScript license information— Web API