-
Notifications
You must be signed in to change notification settings - Fork 0
/
getKCsubtypeIndices.m
46 lines (40 loc) · 1.45 KB
/
getKCsubtypeIndices.m
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
% this script operates on a numKCs x numKCs matrix called result
allNeurons = readtable('../hemibrain-synapse-spacing/data/traced-neurons.csv');
KCsubtypes = {
'KCg';
'KCg-d';
'KCab-a';
'KCab-c';
'KCab-p';
'KCab-s';
'KCa''b''';
};
numTypes = length(KCsubtypes);
KCsubtypeIndices = cell(numTypes,1);
for i=1:numTypes
% KCsubtypes{i}
[~,KCsubtypeIndices{i},~] = intersect(apl.synSet(1).uniquePartners, ...
allNeurons{strcmp(allNeurons{:,'instance'},KCsubtypes{i}),'bodyId'});
% length(KCsubtypeIndices{i})
end
meanResult = zeros(numTypes,2,size(result,3));
resultAllreordered = cell(size(result,3),1);
set(0,'DefaultFigureVisible','off');
for j=1:size(result,3)
totalPerm = [];
for i=1:numTypes
resultThisType = result(KCsubtypeIndices{i},KCsubtypeIndices{i},j);
meanResult(i,1,j) = mean(resultThisType(eye(size(resultThisType))==1));
meanResult(i,2,j) = mean(resultThisType(eye(size(resultThisType))==0));
% size(resultThisType)
z = linkage(resultThisType);
h = figure;
[h,t,perm] = dendrogram(z,length(KCsubtypeIndices{i}));
resultThisTypeReordered = resultThisType(perm,perm);
totalPerm = [totalPerm; KCsubtypeIndices{i}(perm)];
%figure,imagesc(resultThisTypeReordered);
% size(resultThisTypeReordered)
end
resultAllreordered{j} = result(totalPerm,totalPerm,j);
end
set(0,'DefaultFigureVisible','on');