使用bioconductor和r标准化data.frame

时间:2013-08-14 11:51:17

标签: r

我看到了几种以affyBatch对象形式规范化数据的方法。使用的一些方法是:threestepmas5callsmascallsfilterjustMASrma。但是我的数据是data.frame格式,因为我从.txt文件中读取了表达式数据。

您能告诉我在data.frame上可以使用的规范化和过滤方法吗?或者是否可以将data.frame转换为affyBatch对象?

当我尝试一些规范化方法时,我收到以下错误:

dat.eset <- threestep(dat.fp, background.method="RMA.2",
                      normalize.method="quantile", summary.method="median.polish")
Error in threestep(dat, background.method = "RMA.2", normalize.method = "quantile", :
argument is data.frame threestep requires AffyBatch dat.mas5 <- mas5calls(dat)
Error in (function (classes, fdef, mtable) :
unable to find an inherited method for function ‘mas5calls’ for signature ‘"data.frame"’

2 个答案:

答案 0 :(得分:0)

最好在Bioconductor邮件列表上询问Bioconductor的问题。您提到的许多方法都不常用,并且由于历史原因或多或少存在。可能您的'data.frame'已经以某种方式进行了总结,从而消除了其他方法。您真的需要提供更多信息(关于数据框中的实际内容)以获得有用的答案;您可以查看limma包的广泛插图和microarray工作流程作为起点。

答案 1 :(得分:0)

使用与实验中相同类型的CEL文件创建“假”AffyBatch(从GEO获取一个并通过复制复制),然后

my.AB <- readAffy(filenames)

或来自simpleaffy包的read.affy,以及covdesc文件

然后用

替换数据
exprs(my.AB) <- my.numeric.data

其中my.numeric.data是您的数据框,之前已转换为数字矩阵

然后根据需要进行MAS / RMA等