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中文本挖掘精简版的更多相关文章

  1. [异常解决] ubuntu上安装虚拟机遇到的问题(vmware坑了,virtual-box简单安装,在virtual-box中安装精简版win7)

    利用周末时间将整个电脑格式化,换成了ubuntu系统- 所谓:扫清屋子再请客! 但是有些软件只在win上有,于是还是考虑装个虚拟机来个——逐步过度策略,一点点地从win上转移到linux上 我的系统是 ...

  2. VMware Workstation 10.0 简中绿色精简版

    VMware Workstation是强大的虚拟机软件,能在一台机器上同时运行二个或更多Windows.DOS.LINUX系统,并进行开发.测试.部署新的应用程序.VMware10.0 延续VMwar ...

  3. Linux上oracle精简版客户端快速部署

    RHEL6 + Oracle 11g客户端快速部署 需求:只是用到客户端的sqlplus, sqlldr功能. 方案:用精简版实现客户端的快速部署 1.上传oracle精简版客户端到服务器/tmp目录 ...

  4. Log4j快速使用精简版

    Log4j快速使用精简版 1.导入log4j-1.2.17.jar包 2.在src根目录下创建log4j.properties文件 log4j.rootLogger=INFO, CONSOLE, FI ...

  5. 小韦XPSP3 V10.0_Ghost精简版

    小韦XPSP3 V10.0_Ghost精简版 该版本基于小韦XPSP3 V10.0,用EasySysprep_4.1进行重新封装,最大程度保持原版极度精简的理念.C盘为NTFS格式,安装后C盘只占用2 ...

  6. python 遗传算法精简版

    精简版遗传算法,算法中仅采用变异算子而没有使用交叉算子,但是进化依然很有效 from string import ascii_lowercase from random import choice, ...

  7. HTML5技术实现Web图形图像处理——WebPhotoshop精简版

    WebPhotoshop精简版是利用HTML5技术在Web上实现对图形图像的处理,构建易维护.易共享.易于拓展.实时性的Web图形图像处理平台. 精简版功能包括:图形绘制.图像处理.图像操作.完整版包 ...

  8. 安装CentOS7精简版后的配置工作

    CentOS7完整版有7.7G,太大了下载起来比较费劲,还是下载了精简版,但是精简版安装以后很多命令都没有,还要动手配yum源,按需安装 国内的yum源比较好的就是163的了,配置方法: 1,进入yu ...

  9. stl总结精简版

    STL 精简版 vetor #include<vector> #include<cstdio> #include<algorithm> #include<io ...

随机推荐

  1. windows的虚拟磁盘(vhd,vhdx)使用

    以前一直使用u盘或者移动硬盘接上usb直接拷贝文件,发觉速度一般.而且一般只有一个盘,分类也很不方便. 后来发现windows的虚拟磁盘可以解决我的问题... 经过一段时间的使用后发觉使用虚拟磁盘的方 ...

  2. vue.js 源代码学习笔记 ----- instance event

    /* @flow */ import { updateListeners } from '../vdom/helpers/index' import { toArray, tip, hyphenate ...

  3. Slice Header中的field_pic_flag的含义?

    编码模式指帧编码.场编码.帧场自适应编码.当这个句法元素取值为1时属于场编码:0为非场编码. 序列参数集中的句法元素frame_mbs_only_flag和mb_adaptive_frame_fiel ...

  4. Android内存优化(三)避免可控的内存泄漏

    相关文章 Android性能优化系列 Java虚拟机系列 前言 内存泄漏向来都是内存优化的重点,它如同幽灵一般存于我们的应用当中,有时它不会现身,但一旦现身就会让你头疼不已.因此,如何避免.发现和解决 ...

  5. Ethernet、VLAN、QinQ

    以太网帧格式: 各字段解释: DMAC:目的MAC地址,该字段确定帧的接收者. SMAC:源MAC地址,该字段标识发送帧的工作站. Type:上层协议类型(0x0800:IP;0x0808:ARP;0 ...

  6. UDP:rfc768/广播和多播/IGMP

    封装情况:

  7. 利用你的Mission Control--设置快速回到桌面等操作

    第一步:打开系统偏好设置 第二步:进入设置界面点击 Mission Control 第三:Mission Control界面 进入Hot corners(触发角) 第四:设置mac屏幕四个角的快捷键( ...

  8. UIview的一些属性

    一.UIView(视图\控件)1.在屏幕上能看得见.摸得着的东西,都是UIView对象2.任何UIView都可以充当其他UIView的容器3.关于UIView的一些疑问1> 谁来管理UIView ...

  9. Redis学习总结之二——Redis配置文件(Windows版)

    # Redis configuration file example # Note on units: when memory size is needed, it is possible to sp ...

  10. JNative用法注意事项

    公司要做个跟设备打交道的web系统,需要java调用dll.搞java的同事说JNative看起来挺好使的,找俺帮忙调通.用的是1.3.1版本 环境设置. JNative的调试信息需要打开才能更清楚些 ...