python利用sklearn对企业数据分析并预测

互联网 2021/10/21 22:39:27

题目大概就是利用企业发票的信息分析出企业是否为异常企业,其中企业一共有3万多家,发票数大约有400多万条信息,发票明细信息有1000多万条信息 因为之前已经采用一些分析的方法找到了321家异常企业,所以对发票表进行分析,利用sklearn建立决策树模型,并利用训练集对其…

题目大概就是利用企业发票的信息分析出企业是否为异常企业,其中企业一共有3万多家,
发票数大约有400多万条信息,发票明细信息有1000多万条信息

因为之前已经采用一些分析的方法找到了321家异常企业,所以对发票表进行分析,
利用sklearn建立决策树模型,并利用训练集对其进行训练,最后对测试数据进行预测。


一、环境准备
    python
    sklearn
    panda
二、数据准备
    首先将原数据表拆分为两个表分别作为训练数据集和测试数据集
    在训练数据集中增加一个字段label表示该条信息是否为问题数据,0为正常,1为有问题

    

 

 

 

三、读入文件(利用panda读入文件)

    将训练数据集以及测试数据集读入到程序中

#读取CSV 文件

train_data=pd.read_csv(r'.\train1.csv')

test_data=pd.read_csv(r'.\test1.csv')

  

四、特征选择

  对训练数据集进行特征属性的选择

# 3特征选择

features=['xf_id', 'gf_id', 'je', 'se', 'jshj', 'zfbz']#表内数据特征

train_features=train_data[features]

train_labels=train_data['label']

test_features=test_data[features]

 五、创建ID3决策树

  利用sklearn创建决策树模型

#4 创建ID3决策树

clf=DecisionTreeClassifier(criterion='entropy')

test_features=dvec.fit_transform(test_features.to_dict(orient='record'))

clf.fit(train_features,train_labels)

 六、优化模型

  利用k折交叉验证,统计决策树准确率,提高正确率

#k折交叉验证,统计决策树准确率,提高正确率

from sklearn.model_selection import cross_val_score

import numpy as np

print(u'cross_val_score 准确率为 %.4lf' % np.mean(cross_val_score(clf, train_features, train_labels, cv=10)))

 七、测试数据预测并存储结果

#预测测试数据
test_predict1=clf.predict(test_features)
print(test_predict1)
#存储预测结果
temp = pd.DataFrame(test_predict1)
temp.to_csv('D:\\test\\3\\3.csv')

  最后对预测结果进行分析,发现测试数据中有25条数据,加上训练数据集中的278条数据,一共是303条记录,结果还算是比较不错的啊

 

 

 

最后的最后,整个的源代码是参考一个泰坦尼克预测生存率的代码,

这是项目的地址:cystanford/Titanic_Data: Titanic乘客生存预测 (github.com)

 

随时随地学软件编程-关注百度小程序和微信小程序
关于找一找教程网

本站文章仅代表作者观点,不代表本站立场,所有文章非营利性免费分享。
本站提供了软件编程、网站开发技术、服务器运维、人工智能等等IT技术文章,希望广大程序员努力学习,让我们用科技改变世界。
[python利用sklearn对企业数据分析并预测]http://www.zyiz.net/tech/detail-244957.html

上一篇:使用python画K线图(蜡烛图)

下一篇:python之赋值、浅拷贝、深拷贝

赞(0)
关注微信小程序
程序员编程王-随时随地学编程

扫描二维码或查找【程序员编程王】

可以随时随地学编程啦!

技术文章导航 更多>
扫一扫关注最新编程教程