e725122a79506429270bb1e7e743e4834d0a1bf9
[scilab.git] / scilab / modules / statistics / macros / ftest.sci
1
2 // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3 // Copyright (C) 2000 - INRIA - Carlos Klimann
4 // 
5 // This file must be used under the terms of the CeCILL.
6 // This source file is licensed as described in the file COPYING, which
7 // you should have received as part of this distribution.  The terms
8 // are also available at
9 // http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
10 // 
11
12 function [f,p]=ftest(samples)
13 //
14 //Given a  number nc of samples each  of them composed of nr
15 //observations this fonction computes in f the Fischer ratio
16 //(it is the  ratio between  nr times  the variance   of the
17 //means of  samples  and the  mean of the  variances of each
18 //sample).  Additionnally it gives (in p) the p-value of the
19 //computed  Fischer ratio.  samples   is a matrix  with type
20 //nrxnc.
21 //
22 //References:  Wonacott, T.H. & Wonacott, R.J.; Introductory
23 //Statistics, J.Wiley & Sons, 1990.
24 //
25   [nr nc]=size(samples)
26   xbar=mean(samples,'r')
27   xbarbar=mean(xbar)
28   sx2=sum((xbar-xbarbar).^2)/(nc-1)
29   sp2=(sum(sum((samples-ones(nr,1)*xbar).^2),'r'))/(nc*(nr-1))
30   f=(nr*sx2)/sp2
31   p=1-cdff("PQ",f,(nc-1),(nc*(nr-1)))
32 endfunction