首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用ggplot / stat_summary为两个单独的组添加多行均值

使用ggplot / stat_summary为两个单独的组添加多行均值
EN

Stack Overflow用户
提问于 2021-04-02 15:48:27
回答 1查看 30关注 0票数 0

新手来了。

我正在尝试创建两个不同基因的基因表达式2^-DCT值(数据框中的p2ndCt)的抖动图,以及表示平均值的两条单独的线。我的样本是一系列有序的细胞系。我将数据放在data.frame中,如下所示:

代码语言:javascript
复制
       Sample  gene   dCt       p2ndCt
1  K562 naive e14a2 -1.34 2.531513e+00
2   DMSO ctrl e14a2 -0.40 1.319508e+00
3      0.5 nM e14a2 -1.93 3.810552e+00
4        1 nM e14a2 -3.06 8.339726e+00
5        2 nM e14a2 -4.17 1.800094e+01
6      3.5 nM e14a2 -4.70 2.599208e+01
7        5 nM e14a2 -3.58 1.195879e+01

..。

代码语言:javascript
复制
67       5 nM  e6a2 -2.06 4.169863e+00
68      10 nM  e6a2 -0.02 1.013959e+00
69      15 nM  e6a2  7.52 5.448217e-03
70      25 nM  e6a2  0.75 5.946036e-01

我想让stat_summary()在每个样本中分离e14a2均值和e6a2均值,但是我不确定如何在现有的data.frame中做到这一点。我尝试过以下代码:

代码语言:javascript
复制
##BCR-ABL1 dCt qPCR graph
BCRABL1_dCt <- read.csv('~/Manjaro/workspace/BCR-ABL1_dCt.csv')
BCRABL1_dCt$Sample <- factor(BCRABL1_dCt$Sample, levels = c('K562 naive', 'DMSO ctrl', '0.5 nM', '1 nM', '2 nM', '3.5 nM', '5 nM', '10 nM', '15 nM', '25 nM', '50 nM', '200 nM'))

BCRABL1_dCt_plot <- ggplot(BCRABL1_dCt, aes(x = Sample, y = p2ndCt, color = gene)) + geom_jitter(width = 0.1, height = 0) + stat_summary(aes(y = p2ndCt, group = 1), fun = mean, geom = 'line', size = 1, color = 'red')
e14a2_dCt_plot

...which只给了我一条线,平均了这两个基因。我读到过,我可以把这些基因放在不同的data.frames中,但最好是全部放在一个one里。提前感谢您的帮助!

EN

回答 1

Stack Overflow用户

发布于 2021-04-02 19:42:42

使用所提供的数据片段运行您的代码,Sample提供了一种方法

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

ggplot(BCRABL1_dCt, aes(x = Sample, y = p2ndCt, color = gene)) + 
  geom_jitter(width = 0.1, height = 0) + 
  stat_summary(aes(y = p2ndCt, group = 1), fun = mean, geom = 'line', size = 1, color = 'red')

但是,使用group=gene而不是group=1为每个gene提供了一系列方法

代码语言:javascript
复制
ggplot(BCRABL1_dCt, aes(x = Sample, y = p2ndCt, color = gene)) + 
  geom_jitter(width = 0.1, height = 0) + 
  stat_summary(aes(y = p2ndCt, group = gene), fun = mean, geom = 'line', size = 1, color = 'red')

DATA

代码语言:javascript
复制
BCRABL1_dCt <- read.table(text = "       Sample  gene   dCt       p2ndCt
1  K562_naive e14a2 -1.34 2.531513e+00
2   DMSO_ctrl e14a2 -0.40 1.319508e+00
3      0.5_nM e14a2 -1.93 3.810552e+00
4        1_nM e14a2 -3.06 8.339726e+00
5        2_nM e14a2 -4.17 1.800094e+01
6      3.5_nM e14a2 -4.70 2.599208e+01
7        5_nM e14a2 -3.58 1.195879e+01
67       5_nM  e6a2 -2.06 4.169863e+00
68      10_nM  e6a2 -0.02 1.013959e+00
69      15_nM  e6a2  7.52 5.448217e-03
70      25_nM  e6a2  0.75 5.946036e-01", header = TRUE)

BCRABL1_dCt$Sample <- gsub("_", " ", BCRABL1_dCt$Sample)
BCRABL1_dCt$Sample <- factor(BCRABL1_dCt$Sample, levels = c('K562 naive', 'DMSO ctrl', '0.5 nM', '1 nM', '2 nM', '3.5 nM', '5 nM', '10 nM', '15 nM', '25 nM', '50 nM', '200 nM'))
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66916060

复制
相关文章

相似问题

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