记录一次决策树分类法的初次使用,使用的数据是一本书上的信息,
如果需要的话可以点个赞然后加我的qq,qq在评论区
使用的jupyter进行编辑的,我尽量把代码图片一块展示出来
import pandas as pd
pd1=pd.read_excel(r'D:\zhouty python project\jupyter\数据挖掘\kzsk.xls')
pd1.销售类型[pd1.销售类型!='国产轿车'] = 0
pd1.销售类型[pd1.销售类型=='国产轿车'] = 1
pd1['销售模式'].groupby(pd1['输出']).value_counts()
pd1.销售模式[pd1.销售模式=='一级代理商'] = 0
pd1.销售模式[pd1.销售模式=='二级及二级以下代理商'] = 0
pd1.销售模式[pd1.销售模式!=0] = 1
pd1.维修毛利[pd1.维修毛利<=0] = 0
pd1.维修毛利[pd1.维修毛利!=0] = 1
pd1.汽车销售平均毛利[pd1.汽车销售平均毛利<=0] = 0
pd1.汽车销售平均毛利[pd1.汽车销售平均毛利!=0] = 1
pd1.企业维修收入占销售收入比重[pd1.企业维修收入占销售收入比重<=0] = 0
pd1.企业维修收入占销售收入比重[pd1.企业维修收入占销售收入比重!=0] = 1
pd1.增值税税负[pd1.增值税税负<=0] = 0
pd1.增值税税负[pd1.增值税税负!=0] = 1
pd1.存货周转率[pd1.存货周转率<=0] = 0
pd1.存货周转率[pd1.存货周转率!=0] = 1
pd1.整体理论税负[pd1.整体理论税负<=0] = 0
pd1.整体理论税负[pd1.整体理论税负!=0] = 1
pd1.整体税负控制数[pd1.整体税负控制数<=0] = 0
pd1.整体税负控制数[pd1.整体税负控制数!=0] = 1
pd1.输出[pd1.输出=='正常'] = 1
pd1.输出[pd1.输出!=1] = 0
pd2=pd1[['纳税人编号','销售类型','销售模式','汽车销售平均毛利','维修毛利','企业维修收入占销售收入比重','增值税税负','存货周转率','整体理论税负','整体税负控制数','输出']].copy()
import pandas as pd
from random import shuffle
import numpy as np
data = np.array(pd2)
shuffle(data)
p=0.8
train = data[:int(len(data)*p),:]
test = data[int(len(data)*p):,:]
train=train.astype(int)
test=test.astype(int)
from sklearn.tree import DecisionTreeClassifier #导入决策树模型
tree=DecisionTreeClassifier()
tree.fit(train[:,1:10],train[:,10])
test2=tree.predict(test[:,1:10])
test[:,10]
i=0
m=0 #正确率
while(i<len(test2)):
if(test2[i]==test[i,10]):
m=m+1
i=i+1
m/i
最后生成的模型,我实验了多次,识别率大概在百分之80以上,平均下来百分之83左右。
代码就是这个样子的,具体的内容又不会的或者想要获取这个数据的可以点个赞加我问就可以了,嗓子疼在这就不多说了。