4 months ago

一、原始数据处理

先从官网是下载数据集后,是一个文本文档


打开文本后观察数据样式

数据总共两列,第一列是标签:ham表示非垃圾短信,spam表示垃圾短信
第二列表示具体短信内容,长度不定,包含了各种字母、数字、大小写等特殊符号
这样的原始数据处理其实就简单了,先把标签和训练内容单独分开(为演示方便,只取前三个数据)

发现数据与数据之间是通过回车符“\n"隔开的,数据内部的标签和内容是通过制表符“\t”隔开
先把数据与数据分开

在把标签和内容分开

其实还有一些数据清洗的工作

for i in contents:
        # 去除空白字符、下划线、数字(暂时还没想明白这一操作的必要性)
    text_string1 = re.sub(r'([^\s\w]|_|[0-9])+', '', i)
    # 刚刚得到的结果是包含多个元素的列表,要拼接回一个字符串
    text_string2 = " ".join(text_string1.split())
    # 字符统一成小写
    text_string3 = text_string2.lower()

参考资料:
垃圾短信数据集官方下载地址
短信标签:ham、spam解释
Python split()方法
python中的三元表达式

← 【深度学习】RNN图片输入数据的处理 【深度学习】Keras实现RNN →