我正在将以下 CDF 文件用于短柄草的 Affymetrix 芯片。显然,它遵循Affymetrix CDF specification的所有规则。
http://giorgilab.org/BradiGiorgiMutwil001_txt.cdf
但是,当我尝试使用 R 和 Bioconductor 包创建自定义cdf 环境时makecdfenv
library(makecdfenv) make.cdf.package("BradiGiorgiMutwil001_txt.cdf",species="Brachypodium_dystachion")
我收到以下错误:
Reading CDF file.
* caught segfault * address 0x1, cause 'memory not mapped'
Traceback: 1: .Call("readCDFfile", as.character(file), as.integer(3), as.integer(compress), PACKAGE = "makecdfenv") 2: read.cdffile(file.path(path.expand(cdf.path), filename), compress = compress) 3: make.cdf.env(filename, cdf.path = cdf.path, compress = compress, return.env.only = FALSE) 4: make.cdf.package("BradiGiorgiMutwil001_txt.cdf", species = "Brachypodium_dystachion")
输入 CDF 文件中是否有任何让您觉得错误的内容?我完全感到困惑,因为我不知道如何解释这个段错误,也不知道如何将其追溯到特定问题。使用 affxparser Bioconductor 包时会发生类似的情况,因此肯定是 CDF 字段有问题(而不是包)。
非常感谢! :-)
费德里科
最佳答案
函数make.cdf.package()
仅适用于二进制cdf。您需要使用 affxparser::convertCdf() 转换 cdf,然后才能创建包。
关于r - Affymetrix 自定义 CDF 段错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12141712/