本文主要是介绍MATLAB判别分析报错:The covariance matrix of each group in TRAINING must be positive definite.,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
MATLAB马氏距离判别法classify报错
作业题目: 银行的贷款部门需要判别每个客户的信用好坏(是否未履行还贷责任),以决定是否给予贷款。可以根据贷款申请人的年龄(X1)、受教育程度(X2)、现在所从事工作的年数(X3)、未变更住址的年数(X4)、收入(X5)、负债收入比例(X6)、信用卡债务(X7)、其它债务(X8)等来判断其信用情况。下表是从某银行的客户资料中抽取的部分数据,和某客户的如上情况资料为(53,1,9,18,50,11.20,2.02,3.58),根据样本资料分别用马氏距离判别法、线性判别法、二次判别法对其进行信用好坏的判别。
1 使用线性判别法
正常运行,没有毛病。
2 使用马氏距离判别法
报错,显示:每组的协方差矩阵训练必须正定。
解决方法
- 参数类型选择:linear或diaglinear或diagquadratic,以简化分析模型;可参阅文档:https://ww2.mathworks.cn/help/stats/examples/classification.html
- 优选特征变量的子集,可参阅文档:https://ww2.mathworks.cn/help/stats/examples/selecting-features-for-classifying-high-dimensional-data.html
3 运行通过
这篇关于MATLAB判别分析报错:The covariance matrix of each group in TRAINING must be positive definite.的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!