数据分析案例实战:贝叶斯-新闻分类

本文通过《python数据分析与机器学习实战》视频学习,介绍了如何利用贝叶斯算法进行新闻分类。首先,对新闻数据进行预处理,包括使用jieba分词,停用词处理和关键词提取。接着,利用LDA主题模型进行数据探索。最后,通过划分训练集和测试集,将数据转换成向量形式,并使用贝叶斯分类器进行分类,得出分类准确率。
摘要由CSDN通过智能技术生成

学习唐宇迪《python数据分析与机器学习实战》视频

一、数据分析

每一条包括:

        theme:新闻关键内容

        category:新闻种类

        URL:链接

        content:新闻内容

额,看着很不舒适……

二、数据预处理

(一)读入数据

import pandas as pd
import jieba#结巴分词模块
import numpy
df_news=pd.read_table('./data/val.txt',names=['category','theme','URL','content'],encoding='utf-8')
df_news=df_news.dropna()
print(df_news.shape)
df_news.head()

(二)使用jieba分词器进行分词

content=df_news.content.values.tolist()
#df_news的content列中,用.values拿到该列值,.tolist代表转换成list格式。
print(content[1000])
content_S=[]
#对每条新闻进行分词
for line in content:
    current_segment=jieba.lcut(line)
    if len(current_segment)>1 and current_segment!='\r\n':
        content_S.append(current_segment)
content_S[1000]

输出索引为1000的该条新闻

输出索引为1000的该条新闻分词后的结果


将分词的结果转换成DateFrame表格形式

#将分词结果转换成DataFrame表格,只有content列
df_content=pd.DataFrame({'content_S':content_S})
df_content.head()

(三)停用词处理

pandas.read_csv(...)

        ·filepath_or_buffer : str,path对象或类文件对象
        ·sep : str,默认','分隔符使用。
        ·index_col : int,sequence或bool,可选。用作DataFrame的行标签的列。
        ·names  : 类似数组,可

  • 5
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值