【数据科学项目02】:NLP应用之垃圾短信 邮件检测(端到端的项目)_短消息分析 nlp

本文介绍了一个端到端的NLP项目,专注于垃圾短信检测。通过使用Kaggle数据集,进行数据收集、加载、探索性数据分析(EDA)、数据预处理,包括清洗文本、去除标点符号、停用词等。接着,通过词频统计,绘制词云并分析词数排名前30的单词,揭示了垃圾短信和正常短信的特征差异。
摘要由CSDN通过智能技术生成

img
img

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

在这里我使用的是colab内置环境,完整代码文末获取。

额外的所需包如下,大家自行安装

nltk
streamlit
pickle

1.数据收集和加载

我们将使用kaggle提供的数据集:数据集

该数据集 包含一组带有标记的短信文本,这些消息被归类为正常短信垃圾短信。 每行包含一条消息。每行由两列组成:v1 带有标签,(spam 或 ham),v2 是文本内容。

df=pd.read_csv('/content/spam/spam.csv',encoding='latin-1')#这里encoding需要指定为latin-1

# 查看一下数据基本情况
df.head()

v1 v2 Unnamed: 2 Unnamed: 3 Unnamed: 4
0 ham Go until jurong point, crazy… Available only … NaN NaN NaN
1 ham Ok lar… Joking wif u oni… NaN NaN NaN
2 spam Free entry in 2 a wkly comp to win FA Cup fina… NaN NaN NaN
3 ham U dun say so early hor… U c already then say… NaN NaN NaN
4 ham Nah I don’t think he goes to usf, he lives aro… NaN NaN NaN

该数据包含一组带有标记的短信数据,其中:

  • v1表示短信标签,ham表示正常信息,spam表示垃圾信息
  • v2是短信的内容
#去除不需要的列
df=df.iloc[:,:2]

#重命名列
df=df.rename(columns={"v1":"label","v2":"message"})
df.head()

label message
0 ham Go until jurong point, crazy… Available only …
1 ham Ok lar… Joking wif u oni…
2 spam Free entry in 2 a wkly comp to win FA Cup fina…
3 ham U dun say so early hor… U c already then say…
4 ham Nah I don’t think he goes to usf, he lives aro…
# 将lable进行one-hot编码,其中0:ham,1:spam
from sklearn.preprocessing import LabelEncoder
encoder = LabelEncoder()

df['label']=encoder.fit_transform(df['label'])
df['label'].value_counts()

0    4825
1     747
Name: label, dtype: int64

可以看出一共有747个垃圾短信

# 查看缺失值
df.isnull().sum()
# 数据没有缺失值

label      0
message    0
dtype: int64

2.探索性数据

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值