假定a为某指标在10个样本中的值,5个一组,看以两组均值的差为例(统计量),随机置换检验程序
example: a: 230 -1350 -1580 -400 -760 970 110 -50 -190 -200    
v1=sum(a(1:5))/5;    
v2=sum(a(6:10))/5;    
T=abs(v1-v2);    
x=perms(a);      %矩阵a的全排列(随机全排列)    
v11=(x(:,1)+x(:,2)+x(:,3)+x(:,4)+x(:,5))/5;    
v22=(x(:,6)+x(:,7)+x(:,8)+x(:,9)+x(:,10))/5;    
TT=abs(v11-v22);    
[m,n]=size(TT);    
distribution=tabulate(TT); %产生频率分布    
hist(X)            % 产生直方图    
num=0;            %大于原始差值的个数    
for i=1:m    
    if TT(i,1)>T    
        num=num+1;    
    end    
end    
p=num/mkey words: permutation tests, codes ,matlab, 代码,程序
 
 
                     
            
        













 
                    

 
                 
                    