首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >这些点可以根据R metafor包中的类别在L‘’abbé-plot中着色吗?

这些点可以根据R metafor包中的类别在L‘’abbé-plot中着色吗?
EN

Stack Overflow用户
提问于 2018-01-13 16:25:45
回答 1查看 56关注 0票数 0

有没有可能给L‘’abbé图中的“点”上色?我正在使用metafor包。

代码语言:javascript
复制
 # Load package
 library(metafor)

 # Load data
 data(dat.bcg)

 # Code 
 ex <- rma(ai=tpos, bi=tneg, ci=cpos, 
 di=cneg, data=dat.bcg, measure="OR",
 slab=paste(author, year, sep=", "), method="FE")

# L'abbé plot
labbe(ex, transf = exp, ylab="Test group", xlab="Control")

是否可以根据变量对这些点进行着色?

Fx蓝色点,表示:

代码语言:javascript
复制
dat.bcg$alloc==random

谢谢你C。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-01-13 16:47:52

您可以尝试执行以下操作:

代码语言:javascript
复制
dat.bcg$var[dat.bcg$alloc == "random"] <- "blue"

labbe(ex, transf = exp, ylab = "Test group", xlab = "Control", bg = dat.bcg$var)

如果不进行转换:

代码语言:javascript
复制
labbe(ex, ylab = "Test group", xlab = "Control", bg = dat.bcg$var, grid = TRUE)

我们可以看到,dat.bcg$alloc == "random"的7个实例有7个蓝点。

区分这些点的另一个选项:

代码语言:javascript
复制
labbe(ex, ylab = "Test group", xlab = "Control", grid = TRUE, pch = dat.bcg$alloc)

要更改所有三个点的颜色,可以执行以下操作:

代码语言:javascript
复制
dat.bcg$var[dat.bcg$alloc == "random"] <- "blue"
dat.bcg$var[dat.bcg$alloc == "alternate"] <- "green"
dat.bcg$var[dat.bcg$alloc == "systematic"] <- "red"

或者,对于dplyr,我们可以使用case_when

代码语言:javascript
复制
library(dplyr)

dat.bcg <- dat.bcg %>% 
  mutate(var = case_when(alloc == "random" ~ "blue",
                         alloc == "alternate" ~ "green",
                         alloc == "systematic" ~ "red",
                         TRUE ~ as.character(NA)))

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48238183

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档