关于数据挖掘:R语言对推特twitter数据进行文本情感分析附代码数据

48次阅读

共计 2670 个字符,预计需要花费 7 分钟才能阅读完成。

原文链接:http://tecdat.cn/?p=4012

最近咱们被客户要求撰写对于文本情感剖析的钻研报告,包含一些图形和统计输入。

咱们以 R 语言抓取的推特数据为例,对数据进行文本开掘,进一步进行情感剖析,从而失去很多乏味的信息

找到推特起源是苹果手机或者安卓手机的样本, 清理掉其余起源的样本。

tweets <-tweets_df>%select(id, statusSource, text, created) %>%
extract(statusSource, "source", "Twitter for (.*?)<")>%filter(source %in%c("iPhone", "Android"))

对数据进行可视化计算不同工夫对应的推特比例.。

并且比照安卓手机和苹果手机上的推特数量的区别。

从比照图中咱们能够发现,安卓手机和苹果手机公布推特的工夫有显著的差异,安卓手机偏向于在 5 点到 10 点之间公布推特,而苹果手机个别在 10 点到 20 点左右公布推特。同时咱们也能够看到,安卓手机公布推特数量的比例要高于苹果手机。


点击题目查阅往期内容

NLP 自然语言解决—主题模型 LDA 案例:开掘人民网留言板文本数据

左右滑动查看更多

01

02

03

04

而后查看推特中是否含有援用 , 并且比照不同平台上的数量。

ggplot(aes(source, n, fill = quoted)) +
geom_bar(stat ="identity", position ="dodge") +
labs(x ="", y ="Number of tweets", fill ="")

从比照的后果来看,安卓手机没有被援用的比例要显著低于苹果手机。而安卓手机援用的数量要显著大于苹果手机。因而能够认为,苹果手机发的推特内容大多为原创,而安卓手机大多为援用。

而后查看推特中是否有链接或者图片,并且比照不同平台的状况

ggplot(tweet_picture_counts, aes(source, n, fill = picture)) +
geom_bar(stat ="identity", position ="dodge") +
labs(x ="",

从下面的比照图中,咱们能够看到安卓手机没有图片或者链接的状况要多于苹果,也就是说,应用苹果手机的用户在发推特的时候个别会公布照片或者链接。

同时能够看到安卓平台的用户把推特个别不应用图片或者链接,而苹果手机的用户恰恰相反。

spr <-tweet_picture_counts>%spread(source, n) %>%
mutate_each(funs(. /sum(.)), Android, iPhone)
rr <-spr$iPhone[2] /spr$Android[2]

而后咱们对推特中的异样字符进行检测,并且进行删除而后找到推特中关键词,并且依照数量进行排序

reg <- "([^A-Za-zd#@']|'(?![A-Za-zd#@]))"tweet_words <-tweets>%filter(!str_detect(text, '^"')) %>%m
utate(text =str_replace_all(text, "https://t.co/[A-Za-zd]+|&", "")) %>%
unnest_tokens(word, text, token ="regex", pattern = reg) %>%
filter(!word %in%stop_words$word,str_detect(word, "[a-z]"))


tweet_words %>%count(word, sort =TRUE) %>%head(20) %>%
mutate(word =reorder(word, n)) %>%ggplot(aes(word, n)) +geom_b

对数据进行情感剖析,并且计算安卓和苹果手机的绝对影响比例。

通过特征词情感偏向别离计算不同平台的情感比,并且进行可视化。

在统计出不同情感偏向的词的数量之后,绘制他们的置信区间。从下面的图中能够看到,相比于苹果手机,安卓手机的负面情绪最多,其次是讨厌,而后是悲伤。表白踊跃的情感偏向很少。

而后咱们对每个情感类别中呈现的关键词的数量进行统计。

android_iphone_ratios %>%inner_join(nrc, by ="word") %>%
filter(!sentiment %in%c("positive", "negative")) %>%
mutate(sentiment =reorder(sentiment, -logratio),word =reorder(word, -logratio)) %>%

从后果中咱们能够看到,负面词大多呈现在安卓手机上,而苹果手机上呈现的负面词的数量要远远小于安卓平台上的数量。


点击文末 “浏览原文”

获取全文残缺代码数据资料。

本文选自《R 语言对推特 twitter 数据进行文本情感剖析》。

点击题目查阅往期内容

【数据分享】维基百科 Wiki 负面无害评论(网络暴力)文本数据多标签分类开掘可视化
R 语言文本开掘 tf-idf, 主题建模,情感剖析,n-gram 建模钻研
NLP 自然语言解决—主题模型 LDA 案例:开掘人民网留言板文本数据
Python 主题建模 LDA 模型、t-SNE 降维聚类、词云可视化文本开掘新闻组数据集
自然语言解决 NLP:主题 LDA、情感剖析疫情下的新闻文本数据
R 语言对 NASA 元数据进行文本开掘的主题建模剖析
R 语言文本开掘、情感剖析和可视化哈利波特小说文本数据
Python、R 对小说进行文本开掘和档次聚类可视化剖析案例
用于 NLP 的 Python:应用 Keras 进行深度学习文本生成
长短期记忆网络 LSTM 在工夫序列预测和文本分类中的利用
用 Rapidminer 做文本开掘的利用:情感剖析
R 语言文本开掘 tf-idf, 主题建模,情感剖析,n-gram 建模钻研
R 语言对推特 twitter 数据进行文本情感剖析
Python 应用神经网络进行简略文本分类
用于 NLP 的 Python:应用 Keras 的多标签文本 LSTM 神经网络分类
R 语言文本开掘应用 tf-idf 剖析 NASA 元数据的关键字
R 语言 NLP 案例:LDA 主题文本开掘优惠券举荐网站数据
Python 应用神经网络进行简略文本分类
R 语言自然语言解决(NLP):情感剖析新闻文本数据
Python、R 对小说进行文本开掘和档次聚类可视化剖析案例
R 语言对推特 twitter 数据进行文本情感剖析
R 语言中的 LDA 模型:对文本数据进行主题模型 topic modeling 剖析
R 语言文本主题模型之潜在语义剖析(LDA:Latent Dirichlet Allocation

正文完
 0