Laborator 10 Lect. dr. Daniel N.Pop Departamentul de Calculatoare-Inginerie electrică 17.dec.2015 1
1 Verificarea ipotezelor în Toobox-ul Statistics Toobox-ul Statistics pune la dispoziţia utilizatorului funcţiile din tabelul următor: F unctia Semnif icatia ranksum testul W ilcoxon Mann W hitney signrank testul W ilcoxon pentru observatii perechi signtest testul semnelor pentru observatii perechi ttest testul T pentru o selectie ttest2 testul T pentru doua selecţii ztest testul Z 1.1 Testul Z Funcţia ztest realizează testul Z asupra mediei unei selecţii şi poate fi apelată în unul din următoarele moduri: 1. h=ztest(x,m,sigma) 2. h=ztest(x,m,sigma,alpha) 3. [h,sig,ci]=ztest(x,m,sigma,alpha,tail) Semnificaţia parametrilor este următoarea: x-selecţia m-media sigma-abaterea medie pătratică alpha- nivel de semnificaţie (implicit 0.05) tail-tipul de alternativă;tail = 0 bilaterală implicită, tail =1 unilaterală dreapta, tail =-1, unilaterală stânga. h=0, pentru acceptare, h=1 pentru respingere sig-valoarea P pentru abordare bazată pe probabilităţi ci- interval de încredere 1-alpha pentru medie 2
1.2 Aplicaţie 1 Se consideră preţul unei maşini SMART sport într-o lună la 8 magazine de distribuţie din Uniunea Europeană. Datele sunt memorate în variabila smauto în mii lei: [30922 31159 30988 31029 31129 31124 31168 31142] Presupunând că abaterea medie pătratică este 311 să se verifice ipoteza m=31100 pentru α = 5%. Solutie 1 Secvenţa MATLAB care urmează afişează valorile de selecţie şi verifică ipoteza în abordarea bazată pe probabilităţi. %testul Z smauto=[30922 31159 30988 31029 31129 31124 31168 31142]; reshape(smauto,2,4);% afisare sub forma unei matrici 4 coloane si doua linii [h,vp,iim]=ztest(smauto,31100,311); În urma execuţiei se obţine rezultatele h=0, vp=0.874 iim = 1.0e+004 * 3.0867 3.1298 Remark 2 Exista o abordare clasica : >> vz=(mean(smauto)-31100)/(311/sqrt(16)); Se obtine: vz =-0.2235 >> norminv([0.025,1-0.025],0,1) Se obtine: ans =-1.9600 1.9600 Deoarece valoarea statisticii Z, vz este in afara regiunii critice ipoteza nula se accepta. Daca abaterea medie patratica este necunoscuta atunci se foloseste testul t. >> [h,pv,iim]=ttest(smauto,311000); Se obtin rezultatele : h=1, pv= 7.0724e-026, iim= 1.0e+004 * 3.1006 3.1159 1.3 Testul t pentru o populatie Functia ttest realizeaza testul T asupra mediei unei selectii si poate fi apelata in unul din urmatoarele moduri: 1. h=ttest(x,m) 3
2. h=ttest(x,m,alpha) 3. [h,sig,ci]=ttest(x,m,alpha,tail) Semnificatia parametrilor este cea de la testul t. 1.4 Aplicatie 2 Se pare ca baietii anormali se nasc mai frecvent din parinti cu mame peste medie. Pentru 20 baieti nascuti anormal se dau varstele mamelor: 31 21 28 28 34 45 21 41 27 31 43 21 39 38 32 28 37 28 16 39 Ne permite selectia sa afirmam ca baieti anormali tind sa apara mai frecvent la mamele cu varsta peste medie la nivelul de semnificatie α = 0.05? Solutie 3 Ipoteza nula este H 0 : m = 28, iar ipoteza alternativa este H 1 : m > 28. Vom folosi testul T Avem urmatoarea sesiune MATLAB anormali=[31 29 34 21 27 43 39 32 37 16 21 28 45 41 31 21 38 28 28 39]; reshape(anormali,2,10); [h,p,ii]=ttest(anormali,28, 0.05,1); va produce urmatoarele rezultate. ans = 31 34 27 39 37 21 45 31 38 28 29 21 43 32 16 28 41 21 28 39 h = 1 p = 0.0352 deoarece p > α, ipoteza nula se respinge si se accepta ipoteza altenativa. 1.5 Testul Z pentru doua populatii Functia ztest2 realizeaza testul Z pentru doua populatii. Iata codul pentru aceasta functie: %testul z pentru doua populatii % nargin=number of function input arguments function[h,p,ci,stats]=ztest2(x1,x2,sigma1,sigma2,difm,alpha,tail) %apel [h,p,ci,stats]=ztest2(x1,x2,sigma1,sigma2,difm,alpha,tail) % x1,x2-selectiile %sigma1,sigma2-abaterile medii patratice %difm- diferenta mediilor (implicit 0) %alfa-nivel de semnificatie(implicit 0) 4
%tail-tip de alternativa 0-bilaterala (implicit),1-unilat dr,-1 unilat st %h=0 acceptare, h=1 respingere %sig- nivel P de probabilitate %ci-interval de incredere pentru diferenta mediilor %stats valoarea statisticii Z if nargin<7 tail=0; if nargin<6 alpha=0.05; if nargin<5 difm=0; xbar=mean(x1)-mean(x2); ers=sqrt(sigma1^2/length(x1)+sigma2^2/length(x2)); Z=(xbar-difm)/ers; vp=normcdf(z,0,1); if nargout>3 stats=z; switch tail case -1 p=pv; if nargout>2 ci=[-inf,norminv(1-alpha,0,1)*ers+xbar]; case 0 p=2*min(vp,1-vp); if nargout>2 ci=norminv([alpha/2,1-alpha/2],0,1)*ers+xbar; case 1 p=1-vp; if nargout>2 ci=[norminv(alpha,0,1)*ers+xbar,inf]; h=p<=alpha; 5
1.6 Testul t pentru doua populatii Functia MATLAB ttest2 realizeaza testul T asupra diferentei mediilor a doua selectii si poate fi apelata in unul din urmatoarele moduri: 1. [h,sig,ci]=ttest2(x,y) 2. [h,sig,ci]=ttest2(x,y,alpha) 3. [h,sig,ci]=ttest2(x,y,alpha,tail) Semnificatia parametrilor este: x,y-selectiile alpha-nivel de semnificatie (implicit 0.05) tail-tipul de alternativa: tail=0 bilaterala(implicit), tail=1, unilaterala dreapta, tail=-1, unilaterala stanga h=0 pentru acceptare, 1 pentru respingere sig-valoarea P asociata statisticii T pentru abordarea bazata pe probabilitati ci-interval de incredere 1-α pentru medie. 1.7 Aplicatie 3 Se considera pretul unui autoturism SMART sport la 20 magazine primele aflate in Uniunea Europeana, iar celelalte in U.S.A, preturile fiind date in dolari. Datele sunt memorate in doua variabile psmart1, psmart2. Sa se verifice ipoteza m 1 = m 2 in raport cu alternativa m 1 m 2 pentru α = 5%, in cazul cand abaterile medii patratice, sunt σ 1 = 111, σ 2 = 113 si in cazul cand ele sunt necunoscute. Solutie 4 In primul rand vom crea o foaie Excel care contine pe colane preturile. Pentru primul caz folosim testul Z, iar in al doilea testul T (functia ttest2). Daca tastam in linia de comanda: >> [h,vp,iidm,vz]=ztest2(psmart1,psmart2,111,113) obtinem rezultatele: h = 1 vp = 1.6067e-010 iidm = -295.9198-157.0802 vz = -6.3949 6
In abordarea bazata pe probabilitati, deoarece vp < α, ipoteza nula se respinge. In abordarea clasica, deoarece valoarea vz a statisticii Z cade in afara regiunii critice, se ajunge la aceeasi concluzie. >>rcrit=norminv([0.025 0.975]) rcrit = -1.9600 1.9600 Aplicand testul t se obtine: >> [h,vp,iidm]=ttest2(psmart1,psmart2) h = 1 vp =1.2995e-008 iidm = -290.1372-162.8628 7