ptyhon中文本挖掘精简版
import xlrd
import jieba
import sys
import importlib
import os #python内置的包,用于进行文件目录操作,我们将会用到os.listdir函数
import pickle #导入cPickle包并且取一个别名pickle #持久化类
import random
import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
from pylab import mpl
from sklearn.naive_bayes import MultinomialNB # 导入多项式贝叶斯算法包
from sklearn import svm from sklearn import metrics
from sklearn.datasets.base import Bunch
from sklearn.feature_extraction.text import TfidfVectorizer
importlib.reload(sys) #把内容和类别转化成一个向量的形式
trainContentdatasave=[] #存储所有训练和测试数据的分词
testContentdatasave=[] trainContentdata = []
testContentdata = []
trainlabeldata = []
testlabeldata = [] #导入文本描述的训练和测试数据
def importTrainContentdata():
file = '20180716_train.xls'
wb = xlrd.open_workbook(file)
ws = wb.sheet_by_name("Sheet1")
for r in range(ws.nrows):
trainContentdata.append(ws.cell(r, 0).value) def importTestContentdata():
file = '20180716_test.xls'
wb = xlrd.open_workbook(file)
ws = wb.sheet_by_name("Sheet1")
for r in range(ws.nrows):
testContentdata.append(ws.cell(r, 0).value) #导入类别的训练和测试数据
def importTrainlabeldata():
file = '20180716_train_label.xls'
wb = xlrd.open_workbook(file)
ws = wb.sheet_by_name("Sheet1")
for r in range(ws.nrows):
trainlabeldata.append(ws.cell(r, 0).value) def importTestlabeldata():
file = '20180716_test_label.xls'
wb = xlrd.open_workbook(file)
ws = wb.sheet_by_name("Sheet1")
for r in range(ws.nrows):
testlabeldata.append(ws.cell(r, 0).value) if __name__=="__main__": importTrainContentdata()
importTestContentdata()
importTrainlabeldata()
importTestlabeldata() '''贝叶斯
clf = MultinomialNB(alpha=0.052).fit(train_set.tdm, train_set.label)
#clf = svm.SVC(C=0.7, kernel='poly', gamma=10, decision_function_shape='ovr')
clf.fit(train_set.tdm, train_set.label)
predicted=clf.predict(test_set.tdm) 逻辑回归
tv = TfidfVectorizer()
train_data = tv.fit_transform(X_train)
test_data = tv.transform(X_test) lr = LogisticRegression(C=3)
lr.fit(train_set.tdm, train_set.label)
predicted=lr.predict(test_set.tdm)
print(lr.score(test_set.tdm, test_set.label))
#print(test_set.tdm) #SVM
clf = SVC(C=1500)
clf.fit(train_set.tdm, train_set.label)
predicted=clf.predict(test_set.tdm)
print(clf.score(test_set.tdm, test_set.label))
''' tv = TfidfVectorizer()
train_data = tv.fit_transform(trainContentdata)
test_data = tv.transform(testContentdata) clf = SVC(C=1500)
clf.fit(train_data, trainlabeldata)
print(clf.score(test_data, testlabeldata)) a=[]
b=[]
for i in range(len(predicted)):
b.append((int)(float(predicted[i])))
a.append(int(test_set.label[i][0])) '''
f=open('F:/goverment/ArticleMining/predict.txt', 'w')
for i in range(len(predicted)):
f.write(str(b[i]))
f.write('\n')
f.write("写好了")
f.close()
#for i in range(len(predicted)):
#print(b[i])
'''
#metrics_result(a, b)
ptyhon中文本挖掘精简版的更多相关文章
- [异常解决] ubuntu上安装虚拟机遇到的问题(vmware坑了,virtual-box简单安装,在virtual-box中安装精简版win7)
利用周末时间将整个电脑格式化,换成了ubuntu系统- 所谓:扫清屋子再请客! 但是有些软件只在win上有,于是还是考虑装个虚拟机来个——逐步过度策略,一点点地从win上转移到linux上 我的系统是 ...
- VMware Workstation 10.0 简中绿色精简版
VMware Workstation是强大的虚拟机软件,能在一台机器上同时运行二个或更多Windows.DOS.LINUX系统,并进行开发.测试.部署新的应用程序.VMware10.0 延续VMwar ...
- Linux上oracle精简版客户端快速部署
RHEL6 + Oracle 11g客户端快速部署 需求:只是用到客户端的sqlplus, sqlldr功能. 方案:用精简版实现客户端的快速部署 1.上传oracle精简版客户端到服务器/tmp目录 ...
- Log4j快速使用精简版
Log4j快速使用精简版 1.导入log4j-1.2.17.jar包 2.在src根目录下创建log4j.properties文件 log4j.rootLogger=INFO, CONSOLE, FI ...
- 小韦XPSP3 V10.0_Ghost精简版
小韦XPSP3 V10.0_Ghost精简版 该版本基于小韦XPSP3 V10.0,用EasySysprep_4.1进行重新封装,最大程度保持原版极度精简的理念.C盘为NTFS格式,安装后C盘只占用2 ...
- python 遗传算法精简版
精简版遗传算法,算法中仅采用变异算子而没有使用交叉算子,但是进化依然很有效 from string import ascii_lowercase from random import choice, ...
- HTML5技术实现Web图形图像处理——WebPhotoshop精简版
WebPhotoshop精简版是利用HTML5技术在Web上实现对图形图像的处理,构建易维护.易共享.易于拓展.实时性的Web图形图像处理平台. 精简版功能包括:图形绘制.图像处理.图像操作.完整版包 ...
- 安装CentOS7精简版后的配置工作
CentOS7完整版有7.7G,太大了下载起来比较费劲,还是下载了精简版,但是精简版安装以后很多命令都没有,还要动手配yum源,按需安装 国内的yum源比较好的就是163的了,配置方法: 1,进入yu ...
- stl总结精简版
STL 精简版 vetor #include<vector> #include<cstdio> #include<algorithm> #include<io ...
随机推荐
- hdu 5802 Windows 10 (dfs)
Windows 10 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total ...
- Linux系统在启动过程中内核文件丢失的解决方法
在/boot目录下有两个重要的文件,分别是: vmlinuz-3.10.0-123.el7.x86_64 内核文件 initamfs-3.10.0-123.el7.x86_64.img ...
- input 取消自动填充
增加属性: name="clear"
- 转:JAVA CAS原理深度分析
看了一堆文章,终于把Java CAS的原理深入分析清楚了. 感谢GOOGLE强大的搜索,借此挖苦下百度,依靠百度什么都学习不到! 参考文档: http://www.blogjava.net/xylz/ ...
- Linux:减号(-)详解
减号(-) 代表标准输出/标准输入, 视命令而定. “-”代替stdin和stdout的用法 为应用程序指定参数 ps -aux tar -zxf test.tar 一个减号和两个减号 一个减号后面跟 ...
- widow系统 LuaForWindows,安装 luasocket
参考 http://94it.net/a/jingxuanboke/2013/0625/49052.html 1. 我用的是 LuaForWindows_v5.1.4-46.exe 可以在我的百度网盘 ...
- C++面向对象的编程思想机器人
C++的面向对象的编程思想如下,一般情况为一个类中包含了这个对象的所有属性与函数,直接调用这个对象就可以对这个对象执行它可以使用的任何操作. #include <iostream> cla ...
- erl_0020 《面对软件错误构建可靠的分布式系统》读书笔记001 “面向并发COPL”
在现实世界中,顺序化的(sequential)活动非常罕见.当我们走在大街上的时候,如果只看到一件事情发生的话我们一定会感到不可思议,我们期望碰到许多同时进行的活动. 如果我们不能对同时发生的众多事件 ...
- BZOJ5450: 轰炸(水题,Tarjan缩点求最长路)
5450: 轰炸 Time Limit: 10 Sec Memory Limit: 256 MBSubmit: 43 Solved:18[Submit][Status][Discuss] Desc ...
- BZOJ5280: [Usaco2018 Open]Milking Order(二分+拓扑)
5280: [Usaco2018 Open]Milking Order Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 123 Solved: 62[ ...