zoukankan      html  css  js  c++  java
  • 用R和BioConductor进行基因芯片数据分析(三):计算median

    接前一篇: http://www.cnblogs.com/emanlee/archive/2012/12/05/2803144.html

    我们已经知道要分析的数据对每个基因有3个重复测定值,经过缺失值填充后,每个基因都有3个可用值。

    这一步很简单,就是取这3个值的中位数,即median。

    方法很多,在excel中可以用median函数;

    在R中以下代码进行操作:

    get_median<-function(i,j){
    num_vec<-c(imputeddata[i*3-2,j],imputeddata[i*3-1,j],imputeddata[i*3,j])
    median(num_vec)
    }
    #A simple function to calculate median value of three replicates

    dimrow<-(dim(imputeddata)[1])/3
    mediandata<-matrix(data = NA, nrow =dimrow, ncol = dim(imputeddata)[2], byrow = TRUE, dimnames = NULL)
    #Create a blank matrix to store median values

    for (i in 1:dimrow){
    for (j in 1:dim(imputeddata)[2]){
    mediandata[i,j]<-get_median(i,j)
    }
    }
    #Assign median value using the function get_median()

    现在我们得到了中位数的数据,储存在mediandata对象里,行数是缺失值填充数据imputeddata的1/3,double check一下:

    > dim(imputeddata)
    [1] 11571 20
    > dim(mediandata)
    [1] 3857 20

    from: http://azaleasays.com/tag/r/

  • 相关阅读:
    POJ 2154
    POJ 1286
    Polycarp's problems
    Greedy Change
    Goods transportation
    Ugly Problem
    Happy Matt Friends
    Dense Subsequence
    Ray Tracing
    Batch Sort
  • 原文地址:https://www.cnblogs.com/emanlee/p/2803420.html
Copyright © 2011-2022 走看看