Task 2 数据读取与数据分析

Task 2 数据读取与数据分析

1.学习目标

1.学习使用Pandas读取赛题数据
2.分析赛题数据的分布规律

2.数据读取

数据采用csv格式存储,可以直接用pandas进行数据读取的操作。
在这里插入图片描述
这里的read_csv是读取csv文件的通用方法,第一个参数是文件路径,第二个参数为分隔符,如果想控制读取的行数可以加上第三个参数nrows。
head()函数返回对象的前n行,缺省为5。
运行后可以看到读取后的数据,有分类标签label,文本数据text,为表格的形式。

3.数据分析

读取数据集后可以对数据进行数据分析的操作。虽然本次数据集是非结构化数据,一般不用做太多数据分析,但通过一定的数据分析还是可以找出一些规律的。
首先确定数据分析的目的:
1.赛题数据中,新闻文本的长度是多少?
2.赛题数据的类别分布如何?那些类别比较多?
3.赛题数据中,字符分布是怎么样的?

3.1 句子长度分析

赛题数据的每行句子使用空格进行分离,所以可以直接统计单词的个数来得到每个句子的长度。
在这里插入图片描述
这里我们计算了每个句子的长度,主要使用了lambda表达式以及split()函数。describe()函数可以显示数据的相关信息。
从结果看出,赛题给出的文本比较长,每个句子平均由907个字符组成,最短的句子只有2个字符,而最长的句子长度达到57921。
下面使用直方图的形式查看句子长度:
在这里插入图片描述
hist()是绘制直方图的方法,bins参数为绘制的柱状条数量。
结果看出大部分句子长度在2000内。

3.2 新闻类别分布

对数据集的类别进行分布统计,具体统计每类新闻的样本个数的分布情况。
在这里插入图片描述
还是一样采用直方图的形式查看。我们在Task1已经了解了标签的对应关系:{‘科技’: 0, ‘股票’: 1, ‘体育’: 2, ‘娱乐’: 3, ‘时政’: 4, ‘社会’: 5, ‘教育’: 6, ‘财经’: 7, ‘家居’: 8, ‘游戏’: 9, ‘房产’: 10, ‘时尚’: 11, ‘彩票’: 12, ‘星座’: 13}。
value_counts()是一种查看表格某列中有多少个不同值的快捷方法,并计算每个不同值有在该列中有多少重复值。可以快速计算每个类别的数量。plot(kind=‘bar’)绘制柱状图。
从结果看出,类别分布存在不均匀的情况,其中科技类最多,股票类次之,最少的是星座新闻。

3.3 字符分布统计

统计每个字符出现的次数,步骤如下:
将训练集中所有句子拼接→将拼接后的内容划分为字符→统计每个字符的个数。

from collections import Counter
all_lines = ' '.join(list(train_df['text']))
word_count = Counter(all_lines.split(" "))
word_count 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值