R?中定量表型的标准化?

时间:2016-04-07 23:06:21

标签: r normalization

我有一个包含4列的数据文件,如下所示:

fid     iid     phen        sig
0002    0002    -.268465    0
0005    0005    -.033474    0
0081    0081    .2921848    0
0091    0091    1.836548    1
0094    0094    .9888859    1
0095    0095    -.1503887   0

'phen'列中的值具有leptokurtic分布。我想规范化此列中的值。

我使用data <- read.table('phenfile.txt')将数据读入R.我尝试了一些将执行分位数归一化的包。 'cape'包(norm.pheno函数)返回错误消息(dim(X) must have a positive length),'preprocessCore'包(normalize.quantiles函数)需要矩阵作为输入。

R中是否还有其他软件包/函数可用于完成文档中单列值的分位数规范化?

非常感谢任何输入。

1 个答案:

答案 0 :(得分:0)

source("https://bioconductor.org/biocLite.R")
biocLite("preprocessCore")

x <- data.frame(fid = c("0002", "0005", "0081", "0091", "0094", "0095"),
                iid =  c("0002", "0005", "0081", "0091", "0094", "0095"),
                phen = c(-.268465, -.033474, .2921848, 1.836548, .9888859,
                     -.1503887),
                sig = c(0, 0, 0, 1, 1, 0))

我不熟悉其中任何一个软件包,但是

normalize.quantiles(as.matrix(x[,"phen", drop = FALSE]))
           [,1]
[1,] -0.2684650
[2,] -0.0334740
[3,]  0.2921848
[4,]  1.8365480
[5,]  0.9888859
[6,] -0.1503887

适合我。不确定它是否提供了您想要的标准化。