Solved bug in usage histcount function used in the method: CCREClass.Calc. Now it calculates probability as it should.
Updated the test script
This commit is contained in:
parent
026a3f589f
commit
8ac21ada83
@ -58,7 +58,7 @@ classdef CCREClass<CREClass
|
|||||||
if isempty(obj.DataRef);return;end %if no refdata given, return;
|
if isempty(obj.DataRef);return;end %if no refdata given, return;
|
||||||
%calculate histogram for RefData
|
%calculate histogram for RefData
|
||||||
EVarEpsDataGivenRef=0; %clear previous calculations
|
EVarEpsDataGivenRef=0; %clear previous calculations
|
||||||
[pDataRef,E]=histcounts(obj.DataRef(:),obj.nBinRef,'Normalization','pdf');
|
[pDataRef,E]=histcounts(obj.DataRef(:),obj.nBinRef,'Normalization','probability');
|
||||||
[JointHist,E1,E2]=histcounts2(obj.Data(:),obj.DataRef(:),[obj.nBin,obj.nBinRef],'Normalization','probability');
|
[JointHist,E1,E2]=histcounts2(obj.Data(:),obj.DataRef(:),[obj.nBin,obj.nBinRef],'Normalization','probability');
|
||||||
for k=1:numel(pDataRef) %loop over the bins in pDataRef NB: must be equal to the bins in JointHist for the Ref
|
for k=1:numel(pDataRef) %loop over the bins in pDataRef NB: must be equal to the bins in JointHist for the Ref
|
||||||
if pDataRef(k)==0;continue;end% if no data at this line go to the next
|
if pDataRef(k)==0;continue;end% if no data at this line go to the next
|
||||||
|
@ -22,14 +22,25 @@ S.Calc;
|
|||||||
S
|
S
|
||||||
%% Test CCRE class
|
%% Test CCRE class
|
||||||
figure(1);clf;hold on
|
figure(1);clf;hold on
|
||||||
A=randn(10);
|
figure(2);clf;
|
||||||
B=randn(10);
|
figure(3);clf;hold on;
|
||||||
|
A=randn(100);
|
||||||
|
B=A;
|
||||||
|
B(:)=A(randperm(numel(A)))
|
||||||
for k=-1:0.1:1
|
for k=-1:0.1:1
|
||||||
CS=CCREClass;
|
CS=CCREClass;
|
||||||
CS.Data=(1-abs(k))*A+k*B;
|
CS.Data=1*(1-abs(k))*A+k*B;
|
||||||
CS.nBin=100;
|
CS.nBin=50;
|
||||||
CS.DataRef=B;
|
CS.DataRef=B;
|
||||||
CS.nBinRef=50;
|
CS.nBinRef=500;
|
||||||
CS.Calc;
|
CS.Calc;
|
||||||
|
figure(1);
|
||||||
plot(k,CS.CCRE,'o')
|
plot(k,CS.CCRE,'o')
|
||||||
|
plot(k,CS.CRE,'x');
|
||||||
|
figure(2);
|
||||||
|
scatter(CS.DataRef(:),CS.Data(:));
|
||||||
|
figure(3);
|
||||||
|
plot(k,CS.CCRE./CS.CRE,'d');
|
||||||
|
pause(0.01)
|
||||||
end
|
end
|
||||||
|
CS
|
Loading…
x
Reference in New Issue
Block a user