【问题标题】:Plotting gene expression data with means in a randomized experiment在随机实验中用均值绘制基因表达数据
【发布时间】:2014-10-02 22:05:35
【问题描述】:

我(R 的新手)正在分析一项关于两种治疗对基因表达影响的随机研究。我们在基线和 1 年后评估了 5 个不同的基因。基因倍数的计算方法是 1 年的值除以基线值。

示例基因: IL10_BL IL10_1Y IL10_fold

基因表达是作为一个连续变量来衡量的,通常在 0.1 到 5.0 之间。 100 名患者被随机分配到他汀类药物或饮食治疗组。

我想做以下情节: - Y 轴应显示具有 95% 置信限的平均基因表达 - X 轴应该是分类的,包含 5 个基因中每个基因的基线、1 年和倍数值,按治疗分组。因此,两组中每个基因有 3 个值的 5 个基因在 X 轴上意味着 30 个类别。如果同一个基因的点连成一条线,那就太好了。

我自己尝试过这样做(使用 ggplot2)但没有成功。我尝试直接从原始数据中进行,看起来像这样(前 6 个观察结果和 2 个不同的基因):

    genes <- read.table(header=TRUE, sep=";", text = 
    "treatment;IL10_BL;IL10_1Y;IL10_fold;IL6_BL;IL6_1Y;IL6_fold;
    diet;1.1;1.5;1.4;1.4;1.4;1.1;
    statin;2.5;3.3;1.3;2.7;3.1;1.1;
    statin;3.2;4.0;1.3;1.5;1.6;1.1;
    diet;3.8;4.4;1.2;3.0;2.9;0.9;
    statin;1.1;3.1;2.8;1.0;1.0;1.0;
    diet;3.0;6.0;2.0;2.0;1.0;0.5;")

我将非常感谢任何帮助(或链接到类似线程)来做到这一点。

【问题讨论】:

    标签: r plot ggplot2 genetics


    【解决方案1】:

    首先,您需要将数据融合为长格式,以便一列(您的 X 列)包含一个分类变量,指示观察值是BL1Y 还是fold

    (您的命令会创建一个您可能需要先删除的空列:genes$X = NULL

    library(reshape2)
    genes.long = melt(genes, id.vars='treatment', value.name='expression')
    

    然后您需要不同列(来自this question)中的基因和测量值(基线、1 年、折叠)。

    genes.long$gene = as.character(lapply(strsplit(as.character(genes.long$variable), split='_'), '[', 1))
    genes.long$measurement = as.character(lapply(strsplit(as.character(genes.long$variable), split='_'), '[', 2))
    

    并按照您期望的顺序进行测量:

    genes.long$measurement = factor(genes.long$measurement, levels=c('BL', '1Y', 'fold'))
    

    然后您可以使用stat_summary() 调用均值和置信区间进行绘图。使用方面来分隔组(治疗和基因组合)。

    ggplot(genes.long, aes(measurement, expression)) + 
    stat_summary(fun.y = mean, geom='point') + 
    stat_summary(fun.data = 'mean_cl_boot', geom='errorbar', width=.25) +
    facet_grid(.~treatment+gene)
    

    如果您希望顶层是基因而不是治疗,您可以将顺序颠倒到facet_grid(.~gene+treatment)

    【讨论】:

      猜你喜欢
      • 2018-08-30
      • 1970-01-01
      • 2018-11-04
      • 1970-01-01
      • 1970-01-01
      • 2020-11-06
      • 2019-01-27
      • 1970-01-01
      • 2018-03-10
      相关资源
      最近更新 更多