如何在matlab上实现fisher线性判别

如何在matlab上实现fisher线性判别,第1张

[dim num_data] = size(X)

w = ones(dim+1,1)%%w = [w0 w1 w2]'

X = [ones(1,num_data)X]

maxiter = 100000

mis_class = 0

iter = 0

while iter<升迟升maxiter

iter = iter+1

y = w'吵老*X

label = ones(1, num_data)%{+1,-1}

label(y<=0) = -1

index = find(label~=t)%错误分类的点旦游

mis_class = numel(index)%错误分类点的数目

if mis_class==0

break

end

for i = 1:mis_class

w = w + X(:,index(i))*t(index(i))

end

end

if iter==maxiter

disp(['达到最大迭代次数' num2str(maxiter)])

end

如何用matlab实现 Fisher's exact test

P是0.7764. 那个warning意思是说有四分之一(25%)的格子理论数小于5.这是做一般卡方检验和Fisher's Exact Test的检验条件,不纳旦满足就要用Fisher's Exact Test。Two-sided是双侧P值,一般都是这个。除非你的专业要求茄拦不同,会使用单侧概率。

你的理解洞纳扰是正确的,确实是具有显著性。4 cells (40.0%) have expected count less than 5. The minimum expected count is .47.这句话提示使用Fisher's Exact Test才是正确的做法。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12482614.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存