function [zamitnuti,K,p,lambda]=tds_poiss(xj,nj,alfa)
% test dobre shody k overeni Poissonova rozlozeni
% syntaxe: [zamitnuti,K,p,lambda]=tds_poiss(xj,nj,alfa)
% vstupni parametry:
% xj ... sloupcovy vektor variant sledovane veliciny
% nj ... sloupcovy vektor absolutnich cetnosti variant
% alfa ... hladina vyznamnosti testu
% vystupni parametry>
% zamitnuti ... =0, kdyz H0 nezamitame
%               =1, kdyz H0 zamitame
% K ... hodnota testove statistiky
% p ... p-hodnota testu
% lambda ... odhad parametru Poissonova rozlozeni
n=sum(nj);
r=size(xj,1);
lambda=sum(nj'*xj)/n;
pj=poisspdf(xj(1:r-1),lambda);
pj=[pj;1-sum(pj)];
npj=n*pj;
%test podminek dobre aproximace....hodnota 1 pro poruseni
if sum(npj<5)>0
    poruchy_podminek=(npj<5)'
    error('Nejsou splneny podminky dobre aproximace.')
end;
K=sum((nj-npj).^2./npj);
kvantil=chi2inv(1-alfa,size(nj,1)-2);
p=1-chi2cdf(K,size(nj,1)-2);
zamitnuti=(p<alfa);

