处理一下定性变量即让它转为虚拟变量,由于是多类,我直接在excel里,通过excel筛选操作把不同类 对应到1- n (两类的话一般是0 1 多类的话就是1-n了)
记录一下两种算法在spss中操作过程:
1.多元logistic回归
分析—回归——多元logistic回归
这里要将几个自变量放到协变量中。
补充:Spss中因子和协变量的区别
因子指分类型变量,例如性别、学历等
协变量指连续型变量,例如面积、重量等
这里的分类结果出现了98.6% 效果可以
如果结果出来是个100%(可能过拟合了即出现类龙格现象)<在二元分类的时候,若正确百分比低是通过加入平方项,交互项来提高正确率,但会有过拟合现象>故我们采用把数据分为训练组和测试组方法。多重复几次,求出平均准确率(交叉验证)
用训练组的数据来估计出模型,再用测试组的数据来进行测试(以80%为训练组,20%为测试组)
把多余的列清除,回归未进行算法时的状态,我们按照20%作测试组,选id为40-48,87-95,136-144为测试组。 (其中一部分,把这些id对应的is_lei删除)
再次执行逻辑回归
算出三种花预测的正确率(这里维吉尼亚鸢尾应该都是2,训练模型后预测的有两个1,对于维吉尼亚正确率就是7/9),然后我多训练几次(把不同的id清除,随机清除)<可以做个表> 然后算出平均准确率(交叉验证),再和另一个Fisher判别分析比较正确率,我们用正确率高的算法。
2.Fisher判别分析
分析——分类——判别式
正确率97.9%