123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 |
- load('data_fig_1c.db','-mat');
- ecp=bsxfun(@rdivide,bsxfun(@minus,eeghp.ecL.p,nanmean(eeghp.ecL.p)),nanmean(amp.ecL.p));
- ecm=bsxfun(@rdivide,bsxfun(@minus,eeghp.ecL.m,nanmean(eeghp.ecL.m)),nanmean(amp.ecL.m));
- egp=bsxfun(@rdivide,bsxfun(@minus,eeg.ecL.p,nanmean(eeg.ecL.p)),nanmean(amp.ecL.p));
- egm=bsxfun(@rdivide,bsxfun(@minus,eeg.ecL.m,nanmean(eeg.ecL.m)),nanmean(amp.ecL.m));
- %%
- ks=20;
- sel=4801:14400;
- aux=ecp(sel,:);
- [idx,Cp]=kmeans(aux',ks);
- aux=ecm(sel,:);
- [idxm,Cm]=kmeans(aux',ks);
- %%
- close all;
- f=figure;
- pp=zeros(19201,ks);
- pm=pp;
- for j=1:ks
- pp(:,j)=mean(ecp(:,idx==j),2);
- pm(:,j)=mean(ecm(:,idxm==j),2);
- end
- C=corr(pp(sel(2401:4800),:),pm(sel(2401:4800),:));
- C(1:ks+1:end)=-1;
- nsp=8;
- fp=zeros(1,nsp);
- fm=fp;
- phm=fp;
- for j=1:nsp
- [mC,rw]=max(C);
- [~,cl]=max(mC);
- rw=rw(cl);
-
- fp(j)=rw;
- fm(j)=cl;
-
- C(:,cl)=-1;
- C(rw,:)=-1;
- phm(j)=angle(mean(exp(1i*phase.ecL.m(9601,bsxfun(@eq,idxm,fm(j)))),2));
- end
- [~,sindex]=sort(phm,'descend');
- for k=1:nsp
- j=sindex(k);
- subplot(nsp,1,k)
- rw=fp(j); cl=fm(j);
- disp([C(rw,cl),corr(pp(sel(2401:4800),rw),pm(sel(2401:4800),cl)),sum(idx==rw),sum(idxm==cl)])
- auxp=mean(ecp(:,idx==fp(j)),2);
- plot((-9600:9600)/4800,auxp,'c','LineWidth',2);
- hold on;
- auxm=mean(ecm(:,idxm==fm(j)),2);
- plot((-9600:9600)/4800,auxm,'b','LineWidth',2);
- axis([-.5 .5 1.4*[-1 1]]);
- set(gca,'XTick',-0.5:.5:.5,'XTickLabel',[]);
- golden(.3)
- end
- set(gca,'XTick',-0.5:.5:.5,'XTickLabel',-0.5:.5:.5,'FontName','Arial');
|