第三方库

pandas

sklearn

数据集

来自于达观杯

训练:train.txt
测试:test.txt

概述

TF-IDF 模型提取特征值
建立逻辑回归模型

代码

# _*_ coding:utf- _*_

# 简单文本分类实现
import time
import pandas as pd
from sklearn.linear_model import LogisticRegression
from sklearn.feature_extraction.text import CountVectorizer print("start......")
time_start=time.time() # ()加载数据 - 利用pandas读取cvs中数据
df_train = pd.read_csv("D:/train.txt")
df_test=pd.read_csv("D:/test.txt")
# [1.1]数据处理 - 根据个人对算据的分析
# 本次实验 - 删除'article','id'列
df_train.drop(columns=['article','id'],inplace=True)
df_test.drop(columns=['article'],inplace=True) # ()特征提取
"""
特征是什么:选取一些“重要元素”标识一个文本
特征选取:抽取关键特征值(TF-IDF,LDA..),原因:特征太多,构成的特征向量计算机非常难处理(内存空间,时间)
一个类别如何标识:文本(多个)+特征(多个)=>[二维向量] --- 标识一个类别
"""
# TF-IDF 模型
# sklearn 提取文本特征
# []TfidfVectorizer
# []CountVectorizer 文本特征提取方法 - 文本中的词语转换为词频矩阵
# 词频矩阵 - 矩阵元素a[i][j] 表示j词在第i个文本下的词频 # sklearn - CountVectorizer
vectorizer=CountVectorizer(ngram_range=(, ), min_df=,max_df=0.9, max_features=)
vectorizer.fit(df_train['word_seg'])
#训练和测试的词频向量格式保持一致
x_train=vectorizer.transform(df_train['word_seg'])
x_test=vectorizer.transform(df_test['word_seg'])
y_train = df_train['class']- # sklearn - TfidfVectorizer
# ()分类模型 - 逻辑回归模型
# modal :LogisticRegression
lg = LogisticRegression(C=, dual=True,solver='liblinear',multi_class='ovr')
lg.fit(x_train, y_train) # ()预测
y_test = lg.predict(x_test) # ()结果展示
df_test['class'] = y_test.tolist()
df_test['class'] = df_test['class'] +
df_result = df_test.loc[:, ['id', 'class']]
df_result.to_csv('D:/result.csv', index=False) time_end=time.time()
print("running time={}".format(time_end-time_start))
print("end......")

python - 实现文本分类[简单使用第三方库完成]的更多相关文章

  1. python 3.x 爬虫基础---常用第三方库(requests,BeautifulSoup4,selenium,lxml )

    python 3.x 爬虫基础 python 3.x 爬虫基础---http headers详解 python 3.x 爬虫基础---Urllib详解 python 3.x 爬虫基础---常用第三方库 ...

  2. Python连接数据库流行用到的第三方库

    Python连接数据库流行用到的第三方库: mysqldb:只支持Python2.x mysqlclient : mysqldb的衍生版本,完全兼容mysqldb,同时支持Python3.x,安装较复 ...

  3. python pip使用国内镜像安装第三方库:命令行或PyCharm

    python pip使用国内镜像安装第三方库:命令行或PyCharm 转载: https://blog.csdn.net/lly1122334/article/details/80646996

  4. python学习(十九)常见的第三方库

    原文链接:http://www.limerence2017.com/2017/12/28/python19/#more 介绍几个python中常见的第三方库. Pillow Pillow简称PIL,是 ...

  5. NO.3_1:自学python之路------番外:第三方库安装、numpy

    引言 Python因为pip的存在,使得第三方库的发布和获取都比较方便.并且Python对跨平台的支持,使得其相较于C++,Java更加方便使用.在本文中,将会介绍在Windows中安装第三方库的方法 ...

  6. python 技巧 之 pyCharm快速添加第三方库和插件

    学习python有几个月,安装第三方库都是通过 pip install 或者 easy_install.每次都要打开命令行感觉太麻烦.还好Pycharm提供了安装第三方库和安装插件的功能. 首先打开P ...

  7. Python学习(六)模块 —— 第三方库

    Python 第三方库 安装第三方库 在Python中,安装第三方库包,是通过setuptools这个工具完成的.Python有两个封装了setuptools的包管理工具:easy_install和p ...

  8. Python常用内建模块和第三方库

    目录 内建模块 1  datetime模块(处理日期和时间的标准库) datetime与timestamp转换 str与datetime转换 datetime时间加减,使用timedelta这个类 转 ...

  9. Python pip包管理器安装第三方库超时解决方案

    一.国内镜像安装 使用方法:pip install --index 镜像网站 第三方库名 二.镜像网站 http://pypi.douban.com/simple/ 豆瓣 http://mirrors ...

随机推荐

  1. 【314】putty 自动登录

    putty是一款好用的远程登录linux服务器软件,但每次输入用户名密码毕竟有些烦人,这里教你免用户名密码登陆. 本教程通过 *.bat 文件进行添加参数,下面为相应的代码: 方法一:(直接将密码/用 ...

  2. Python与Go斐波那契数列

    #!/usr/bin/env python # -*- coding: utf-8 -*- # 斐波那契数列 def fibonacci_sequence(num): aa = 0 b = 1 li ...

  3. UV-Sprite动画

    [UV-Sprite动画] 下文以单行Sprite纹理作为动画贴图.首先需要输入纹理宽度.Sprint数量.速度: 计算每个Sprite的像素宽与UV宽: 根据_Time,计算当前显示第几个Sprit ...

  4. java实现将文件压缩成zip格式

    以下是将文件压缩成zip格式的工具类(复制后可以直接使用): zip4j.jar包下载地址:http://www.lingala.net/zip4j/download.php package util ...

  5. RGB直方图与UV直方图

    ------------------------------------------------------------------------------------ from skimage im ...

  6. Canny效果

  7. extends注意事项

    属性可以在子类中被调用,而局部变量不可以

  8. MicroRNA 详解

    MicroRNA研究历史和方法   Views 88 1Report

  9. 'for' loop initial declarations are only allo

    linux系统下的c编程与windows有所不同,如果你在用gcc编译代码的时候提示‘for’ loop initial declarations are only allowed in C99 mo ...

  10. java IO其他流

    1.内存操作流,ByteArrayInputStream和 ByteArrayOutputStream 案例:将小写转化为大写 /* * 内存操作流,将大写字母转化为小写字母(ByteArrayInp ...