Sankey流图在老年癌症患者症状分析中的应用|科研绘图·24-09-03

news2024/11/26 17:00:25

小罗碎碎念

本期推文主题|桑基图

桑基图我们很多人都不陌生,但是大部分应该都是仅限于在文献中读到过,动手去实践的较少,在文献中的具体作用,可能也不太清楚,所以我这一期推文就来盘一盘桑基图

本期推文共有两部分,第一部分是介绍一下桑基图的定义,并提供了一个R语言的完整代码,方便大家理解绘制桑基图的基本流程。

第二部分则是准备了一篇与老年癌症患者症状分析相关的文章,分析了桑基图在文献中的作用,大家按需自取!!


一、定义

桑基图是一种可视化技术,用于展示流动情况。多个实体(节点)通过矩形或文字表示。它们之间的联系通过箭头或弧线表示,其宽度与流动的重要性成比例

以下是一个示例,展示了从一国(左侧)向另一国(右侧)迁移的人数。


代码演示

这段代码的主要目的是创建一个桑基图(Sankey diagram),用于展示数据集中的流动情况。

首先,它导入了所需的库,并从GitHub加载了数据集。然后,将数据转换为长格式,并创建了一个节点数据框,用于存储参与流动的所有实体。

接下来,重新格式化数据以适应networkD3包的要求。最后,使用sankeyNetwork函数创建桑基图,并设置了相关的参数。

# 导入所需的库
library(tidyverse) # 数据处理和可视化
library(viridis) # 提供颜色渐变方案
library(patchwork) # 图形组合
library(hrbrthemes) # 提供美观的图形主题
library(circlize) # 环形图表

# 从GitHub加载数据集
data <- read.table("https://raw.githubusercontent.com/holtzy/data_to_viz/master/Example_dataset/13_AdjacencyDirectedWeighted.csv", header=TRUE)

# 导入networkD3包
library(networkD3)

# 将数据转换为长格式
data_long <- data %>%
  rownames_to_column %>% # 将行名转换为列
  gather(key = 'key', value = 'value', -rowname) %>% # 将数据转换为长格式
  filter(value > 0) # 只保留值大于0的数据
colnames(data_long) <- c("source", "target", "value") # 重命名列名
data_long$target <- paste(data_long$target, " ", sep="") # 在目标列的值后添加空格

# 创建节点数据框:列出参与流动的所有实体
nodes <- data.frame(name=c(as.character(data_long$source), as.character(data_long$target)) %>% unique())

# 使用networkD3时,连接必须使用id而不是实际名称,因此需要重新格式化数据
data_long$IDsource=match(data_long$source, nodes$name)-1 # 匹配源节点并减去1(因为networkD3的id从0开始)
data_long$IDtarget=match(data_long$target, nodes$name)-1 # 匹配目标节点并减去1

# 准备颜色渐变方案
ColourScal ='d3.scaleOrdinal() .range(["#FDE725FF","#B4DE2CFF","#6DCD59FF","#35B779FF","#1F9E89FF","#26828EFF","#31688EFF","#3E4A89FF","#482878FF","#440154FF"])'

# 安装并导入networkD3包
install.packages("networkD3")
library(networkD3)

# 创建桑基图
sankeyNetwork(Links = data_long, Nodes = nodes,
              Source = "IDsource", Target = "IDtarget",
              Value = "value", NodeID = "name",
              sinksRight=FALSE, colourScale=ColourScal, nodeWidth=40, fontSize=13, nodePadding=20)

image-20240903082159925


二、文献举例|Sankey流图在老年癌症患者症状分析中的应用

image-20240903083210739

在这篇文章中,Sankey流图被应用于分析和展示老年晚期癌症患者的症状轨迹。

  1. 症状轨迹可视化:文章通过Sankey流图展示了老年癌症患者在治疗期间症状的变化,如腹泻频率、疲劳对日常活动的干扰以及疼痛程度的变化。这些图表帮助研究人员和临床医生理解患者在治疗过程中可能经历的不同症状状态及其变化。

  2. 数据解读:Sankey流图使得研究人员能够直观地看到患者从一个症状状态转移到另一个状态的可能性和变化性。例如,通过观察Sankey流图,研究人员可以识别出哪些患者的症状有所改善,哪些患者的病情恶化,以及哪些患者的症状保持不变。

  3. 临床决策支持:通过展示症状的严重程度和变化,Sankey流图为临床医生提供了重要的信息,帮助他们更好地理解患者的治疗反应和耐受性,从而做出更加个性化的治疗决策。

  4. 研究结果展示:文章中提到,Sankey流图作为一种数据可视化工具,可以用于展示研究结果,使得复杂的数据信息更加易于理解和交流。

  5. 患者教育:Sankey流图也可以作为教育工具,帮助患者和家属理解治疗过程中可能遇到的症状变化,从而更好地准备和管理治疗过程中的挑战。

  6. 数据驱动的洞见:通过分析Sankey流图中的数据,研究人员可以获得关于患者群体的深入见解,比如哪些症状最常见,哪些症状对患者的日常活动影响最大,以及不同症状之间的关联性。


Fig. 2 通过Sankey流图详细展示了老年晚期癌症患者在接受治疗期间,其症状(如腹泻、日常活动干扰和疼痛)的变化情况。

这些图表通过不同的颜色和节点表示不同时间点和症状状态,弧线则表示患者从一个症状状态转移到另一个状态的流动。

Fig. Ai

  • 描述:展示了腹泻症状的流行率和频率随时间的稳定性。
  • 分析:这意味着在观察期内,腹泻的总体情况没有显著变化。

image-20240903083817956

Fig. Aii

  • 描述:关注弧线从左到右的流动,特别是黄色弧线。
  • 分析
    • 在基线时,约22%的患者报告腹泻很少发生(黄色节点)。
    • 4-6周后,这些患者中33%改善,没有腹泻;28%保持不变;27%报告腹泻频率增加;12%退出研究。
  • 意义:这表明腹泻症状的改善和恶化在患者群体中是动态变化的,且有一部分患者因症状加重而退出研究。

image-20240903083942665

Fig. Bi

  • 描述:展示了患者在日常活动干扰方面的频繁变化。
  • 分析
    • 弧线显示患者在每个时间点向更高或更低的日常活动干扰级别移动。

Fig. Bii(聚焦Sankey图)

  • 描述:突出显示了日常活动干扰加剧的患者比例。
  • 分析
    • 治疗开始时无日常活动干扰的患者中,56%在4-6周后报告了一定程度的干扰(6%退出)。
  • 意义:这强调了日常活动干扰的增加对患者生活质量的影响,以及退出治疗的患者比例。

image-20240903084048440

Fig. Ci

  • 描述:与Bi类似,展示了患者在日常活动干扰方面的频繁变化。

Fig. Cii(聚焦Sankey图)

  • 描述:突出显示了日常活动干扰加剧的患者比例。
  • 分析
    • 治疗开始时无日常活动干扰的患者中,56%在4-6周后报告了一定程度的干扰(6%退出)。
  • 意义:与Bii类似,这进一步强调了日常活动干扰的增加对患者生活质量的影响。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2100387.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

机器学习算法五之 目标检测评价指标 IOU 准确率 召回率等

机器学习算法五之 目标检测评价指标 IOU 准确率 召回率等 在目标检测算法中&#xff0c;训练出一个模型&#xff0c;想要知道这个模型的效果怎么样&#xff0c;主要是从模型的指标得出的&#xff0c;指标不仅在论文还是在自己学习的过程中&#xff0c;都是十分重要的&#xff…

第十五届蓝桥杯青少组省赛成绩查询及国赛考试安排

刚刚&#xff0c;蓝桥杯青少组官网发布了“关于第十五届蓝桥杯大赛青少组省赛成绩查询及全国总决赛参赛证下载的通知”&#xff0c;第十五届蓝桥杯大赛青少组将开通省赛成绩查询通道&#xff0c;获得省赛一等奖的选手晋级全国总决赛&#xff0c;全国总决赛比赛时间为9月7日。 关…

全球大脑外滩“论剑”:2024年科技人文十大热点问题揭晓

当越来越多工作岗位可能被AI替代&#xff0c;如何实现人的劳动诉求和人生价值&#xff1f;当AI开始弥补甚至取代情感陪伴这一曾经独属于人类的体验&#xff0c;将带来哪些新可能和新问题&#xff1f; 9 月 3 日&#xff0c;外滩大会官微发布2024 Inclusion外滩大会科技人文十大…

高端控制台使用过程中如何保证用电安全

在数字化时代&#xff0c;高端控制台作为数据中心、监控室及正规工作站的核心设备&#xff0c;其稳定运行对于保障业务连续性至关重要。而用电安全&#xff0c;则是这一稳定运行不可或缺的前提。高端控制台集成了大量精密电子设备&#xff0c;对电力供应的质量与稳定性有着极高…

Spring Boot源码阅读——spring.factories的加载机制

Spring Boot源码阅读——spring.factories的加载 提到 SpringBoot 的自动装配&#xff0c;不管是文章还是视频&#xff0c;都会提到 spring.factories 这个文件&#xff0c;这篇文章就来简单讲讲 spring.factories 的作用&#xff0c;以及它是怎么被加载的 简介 位置 以 Sprin…

交换机自动化备份配置(H3C_无人值守)

介绍&#xff1a; 在日常运维过程中&#xff0c;需要定时备份设备的配置&#xff0c;在设备数量过于庞大的情况下&#xff0c;对我们的运维工作会造成极大地不便&#xff0c;通过python自动化能够完美解决人工手动保存设备配置的问题。而且自动化运维在未来也一定是大势所趋&a…

集成电路学习:什么是IEEE电气和电子工程师学会

IEEE&#xff1a;电气和电子工程师学会 IEEE&#xff0c;全称是Institute of Electrical and Electronics Engineers&#xff0c;即电气和电子工程师学会&#xff0c;是一个国际性的电子技术与信息科学工程师的协会&#xff0c;也是目前全球最大的非营利性专业技术学会。IEEE成…

2024版mybatis基础入门学习详情(上)

目录 1、mybatis简介 2、mybatis日志设置 3、取值符号#{}和${}的区别 4、mybatis数据传入 4.1传入单个简单类型 4.2传入实体对象 4.3传入多个简单类型参数 4.4传入Map类型参数 5、mybatis数据返回 5.1返回单个简单类型 5.2返回单个自定义实体类型 5.3返回Map类型 …

快速申请代码签名证书

在当今的互联网世界中&#xff0c;软件开发者面临着越来越高的安全要求。为了保护用户免受恶意软件的侵害&#xff0c;并保证自己的应用程序不会被篡改&#xff0c;许多开发者选择为他们的软件进行代码签名。代码签名证书是确保软件来源真实性和完整性的一种重要工具。下面是申…

pyro ExponentialLR 如何设置优化器 optimizer的学习率 pytorch 深度神经网络 bnn,

第一。pyro 不支持 “ReduceLROnPlateau” &#xff0c;因为需要Loss作为输入数值&#xff0c;计算量大 第二 &#xff0c;svi 支持 scheduler注意点&#xff0c; 属于 pyro.optim.PyroOptim的有三个 AdagradRMSProp ClippedAdam DCTAdam&#xff0c;但是还是会报错&#xff…

号外!软考刷题小工具助力软考和 PMP 等级考试

一. 背景 四年前&#xff0c;我通过培训机构学习了 PMP&#xff0c;系统的学习了项目管理知识体系&#xff0c;说实话&#xff0c;学完感觉确实是有用的&#xff0c;尤其在项目管理方面&#xff0c;一些管理思维确实能够帮助到自己。 如果说 PMP 是国外的项目管理知识体系认证…

数据安全新纪元:Ftrans跨网跨域数据安全交换创新方案

随着业务的不断扩张和发展&#xff0c;大型组织企业&#xff0c;需要在不同的地理区域建设分支机构或办事处&#xff0c;用以覆盖更广泛的市场和客户群体&#xff0c;因此必然存在跨网跨域数据安全交换的场景需求。企业内部会同时存在下述一个或多个跨域文件交换场景&#xff1…

淘宝/天猫的拍立淘API:taobao.item_search_img返回值

淘宝/天猫的拍立淘&#xff08;Taobao Image Search&#xff09;功能允许用户通过上传图片来搜索相似的商品。然而&#xff0c;直接通过API使用这个功能&#xff08;如taobao.item_search_img&#xff09;在淘宝/天猫的官方API中并不直接提供。淘宝/天猫的开放平台&#xff08;…

k8s中pod基础及https密钥、horber仓库

一、pod基础&#xff1a; 1.pod是k8s里面最小单位&#xff0c;pod也是最小化运行容器的资源对象&#xff1b;容器是基于pod在k8s集群中工作&#xff1b;在k8s集群当中&#xff0c;一个pod就代表着一个运行进程&#xff0c;k8s的大部分组件都是围绕pod进行的&#xff0c;对pod进…

转换器和其他运放电路(恒流源+电压-电流/电流-电压转换器+峰值检测器)+故障检测(比较器故障+求和器故障)

2024-9-3&#xff0c;星期二&#xff0c;7:20&#xff0c;天气&#xff1a;阴转多云&#xff0c;心情&#xff1a;目前晴。又是上班的一天&#xff0c;没啥说的&#xff0c;加油上班&#xff0c;加油学习。 今天完成了第八章的学习&#xff0c;主要学习内容为&#xff1a;转换…

探索LLM大模型奥秘,新书《大模型入门:技术原理与实战应用》助你快速上手(附PDF下载)

随着大模型技术的不断完善和普及&#xff0c;我们将进入一个由数据驱动、智能辅助的全新工作模式和生活模式。个人和企业将能够利用大模型来降本增效&#xff0c;并创造全新的用户体验。 人工智能是人类探索未来的重要领域之一&#xff0c;以GPT为代表的大模型应用一经推出在短…

网站建设完成后, 做seo必须知道的专业知识之--robots协议

robots协议&#xff0c;也称为爬虫协议或机器人排除标准&#xff0c;是一种用于指导搜索引擎蜘蛛如何在网站上抓取和访问内容的协议。 网站建设完成后&#xff0c; 做seo必须知道的专业知识之--robots协议 通过这个协议&#xff0c;网站可以告诉搜索引擎哪些页面可以抓取&…

轴承知识大全,详细介绍(附3D图纸免费下载)

轴承一般由内圈、外圈、滚动体和保持架组成。对于密封轴承&#xff0c;再加上润滑剂和密封圈&#xff08;或防尘盖&#xff09;。这就是轴承的全部组成。 根据轴承使用的工作状况来选用不同类型的轴承&#xff0c;才能更好的发挥轴承的功能&#xff0c;并延长轴承的使用寿命。我…

设计模式 -- 迭代器模式(Iterator Pattern)

1 问题引出 编写程序展示一个学校院系结构&#xff1a;需求是这样&#xff0c;要在一个页面中展示出学校的院系组成&#xff0c;一个学校有多个学院&#xff0c; 一个学院有多个系 传统方式实现 将学院看做是学校的子类&#xff0c;系是学院的子类&#xff0c;这样实际上是站在…

CPU性能对比 Intel 海光 鲲鹏920 飞腾2500

横向对比一下x86和ARM芯片&#xff0c;以及不同方案权衡下的性能比较 CPU基本信息 海光 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 #lscpu Architecture: x86_64 CPU…