R语言推特twitter网络转发可视化分析

简介: R语言推特twitter网络转发可视化分析

包含关键词“生物信息学”的推文示例

第1步:加载所需的软件包



# 加载所需的软件包





library(igraph)

第2步:收集关于“生物信息学”的推文



# 包含“生物信息学”的英语推文

dm_tweets = searchTwitter("bioinformatics", n=500,)


# 得到文本



dm_txt = sapply(dm_tweets, function(x) x$getText())

第3步:识别转发

# 查找转发的正则表达式



grep("(RT|via)((?:\\b\\W*@\\w+)+)", dm_tweets,




# 哪些推文是转发推文



rt_patterns = grep("(RT|via)((?:\\b\\W*@\\w+)+)",


dm_txt, ignore.case=TRUE)


# 显示转发(这些是我们要关注的转发)



dm_txt[rt_patterns]


第4步:收集谁转发和谁发布

我们将使用这些结果来形成边列表以创建图形



# 创建列表以存储用户名


who_retweet = as.list(1:length(rt_patterns))




# for循环


for (i in 1:length(rt_patterns))


{


# 通过转发实体获取消息


twit = dm_tweets[[rt_patterns[i]]]


# 获取转推源


poster = str_extract_all(twit$getText(),


"(RT|via)((?:\\b\\W*@\\w+)+)")


#删除':'



poster = gsub(":", "", unlist(poster))


# 转推的用户名


who_post[[i]] = gsub("(RT @|via @)", "", poster, ignore.case=TRUE)


# 转推用户名


who_retweet[[i]] = rep(twit$getScreenName(), length(poster))






# 转换列表为向量格式


who_post = unlist(who_post)



第5步: 从编辑清单创建图形

# 两列边矩阵



retweeter_poster = cbind(who_retweet, who_post)


# 产生图



rt_graph = graph.edgelist(retweeter_poster)


# 获取点名称



ver_labs = get.vertex.attribute(rt_graph, "name", index=V(rt_graph))

第6步: 让我们绘制图



# 选择绘图布局



glay = layout.fruchterman.reingold(rt_graph)


# 绘图



par(bg="gray15", mar=c(1,1,1,1))


plot(rt_graph, layout=glay,




vertex.label.color=hsv(h=0, s=0, v=.95, alpha=0.5),




edge.width=3,


edge.color=hsv(h=.95, s=1, v=.7, alpha=0.5))


# 添加标题



title("\nTweets with 'bioinformatics': Who retweets whom",


cex.main=1, col.main="gray95")

第7步:生物信息学表示



# 绘制另外一个图



par(bg="gray15", mar=c(1,1,1,1))


plot(rt_graph, layout=glay,




edge.color=hsv(h=.35, s=1, v=.7, alpha=0.4))


# 添加标题



title("Tweets with 'bioinformatics': Who retweets whom",


cex.main=1, col.main="gray95", family="mono")


 


相关文章
|
5月前
|
监控 安全 Linux
Arista CloudVision 2025.1 - 多云和数据中心网络自动化、监控和分析
Arista CloudVision 2025.1 - 多云和数据中心网络自动化、监控和分析
187 2
Arista CloudVision 2025.1 - 多云和数据中心网络自动化、监控和分析
|
6月前
|
运维 监控 安全
如何高效进行网络质量劣化分析与流量回溯分析?-AnaTraf
在数字化时代,网络质量分析与流量回溯对保障业务运行至关重要。网络拥塞、丢包等问题可能导致业务中断、安全隐患及成本上升。传统工具常缺乏细粒度数据,难以溯源问题。流量回溯分析可还原现场,助力精准排障。AnaTraf网络流量分析仪作为专业工具,能高效定位问题,提升团队响应力,降低运营风险。
如何高效进行网络质量劣化分析与流量回溯分析?-AnaTraf
|
6月前
|
大数据
“你朋友圈的真面目,大数据都知道!”——用社交网络分析看透人情世故
“你朋友圈的真面目,大数据都知道!”——用社交网络分析看透人情世故
186 16
|
11月前
|
人工智能 边缘计算 物联网
蜂窝网络未来发展趋势的分析
蜂窝网络未来发展趋势的分析
335 2
|
11月前
|
数据采集 缓存 定位技术
网络延迟对Python爬虫速度的影响分析
网络延迟对Python爬虫速度的影响分析
|
7月前
|
存储 人工智能 编解码
Deepseek 3FS解读与源码分析(2):网络通信模块分析
2025年2月28日,DeepSeek 正式开源其颠覆性文件系统Fire-Flyer 3FS(以下简称3FS),重新定义了分布式存储的性能边界。本文基于DeepSeek发表的技术报告与开源代码,深度解析 3FS 网络通信模块的核心设计及其对AI基础设施的革新意义。
Deepseek 3FS解读与源码分析(2):网络通信模块分析
|
12月前
|
机器学习/深度学习 数据采集 存储
时间序列预测新突破:深入解析循环神经网络(RNN)在金融数据分析中的应用
【10月更文挑战第7天】时间序列预测是数据科学领域的一个重要课题,特别是在金融行业中。准确的时间序列预测能够帮助投资者做出更明智的决策,比如股票价格预测、汇率变动预测等。近年来,随着深度学习技术的发展,尤其是循环神经网络(Recurrent Neural Networks, RNNs)及其变体如长短期记忆网络(LSTM)和门控循环单元(GRU),在处理时间序列数据方面展现出了巨大的潜力。本文将探讨RNN的基本概念,并通过具体的代码示例展示如何使用这些模型来进行金融数据分析。
1070 2
|
7月前
|
数据采集 机器学习/深度学习 数据可视化
探索大数据分析的无限可能:R语言的应用与实践
探索大数据分析的无限可能:R语言的应用与实践
256 9
|
10月前
|
存储 安全 物联网
浅析Kismet:无线网络监测与分析工具
Kismet是一款开源的无线网络监测和入侵检测系统(IDS),支持Wi-Fi、Bluetooth、ZigBee等协议,具备被动监听、实时数据分析、地理定位等功能。广泛应用于安全审计、网络优化和频谱管理。本文介绍其安装配置、基本操作及高级应用技巧,帮助用户掌握这一强大的无线网络安全工具。
724 9
浅析Kismet:无线网络监测与分析工具
|
10月前
|
数据采集 机器学习/深度学习 人工智能
基于AI的网络流量分析:构建智能化运维体系
基于AI的网络流量分析:构建智能化运维体系
1548 13