簡體   English   中英

使用 ggplot / stat_summary 為兩個單獨的組添加多行均值

[英]Adding multiple lines of means for two separate groups using ggplot / stat_summary

新手在這里。

我正在嘗試為兩個不同的基因創建一個抖動 plot 的基因表達 2^-dCt 值(數據框中的 p2ndCt),以及代表平均值的兩條單獨的線。 我的樣本是一系列有序的細胞系。 我在 data.frame 中有如下數據:

       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

我想讓 stat_summary() 將每個樣本中的 e14a2 均值與 e6a2 均值分開,但是我不確定如何在現有的 data.frame 中執行此操作。 我試過這段代碼:

##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

...這只是給了我一條線來平均兩個基因。 我讀過我可以將基因放在不同的 data.frames 中,但最好將它們全部放在一個中。 在此先感謝您的幫助!

使用提供的數據片段運行代碼會通過Sample提供一種方法:


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提供了一系列均值:

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')

數據

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'))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM