【问题标题】:Call an input file doesn't work调用输入文件不起作用
【发布时间】:2012-06-15 14:49:15
【问题描述】:

我正在使用来自 bioconductor 的 Gviz 库。我输入了一个制表符分隔文件,其中包含我需要在我的染色体表意文字上绘制的 CNV 位置。

我的输入文件由 dat 定义,有 4 列

  • [1] 染色体
  • [2]开始
  • [3]结束
  • [4] 宽度(可以是“+”或“-”,具体取决于拷贝数的方向)

所以我这样做了:

library(IRanges)
libraray(Gviz)
gen <- "mm9"
chr <- "chr1"

itrack <- IdeogramTrack(genome = gen, chromosome = chr)
gtrack <- GenomeAxisTrack()

dat <- read.delim("C:/R/1ips_chr1.txt", header = FALSE, sep ="\t")
s <- dat[2]
e <- dat[3]
l <- dat[4]

当我调用文件 dat 时它显示一条错误消息:

atrack1 <- AnnotationTrack( start = s, width = l , chromosome = chr, genome = gen, name =  "Sample1")
Error : function (classes, fdef, mtable)  : unable to find an inherited method for function ".buildRange", for signature "NULL", "data.frame", "NULL", "data.frame"

显然我调用输入文件(在 dat 中)的方式不满足 R .. 请有人帮助我:)

【问题讨论】:

    标签: file r input bioconductor


    【解决方案1】:

    来自Gviz 包的reference manual(我不熟悉),AnnotationTrack 函数中的参数startwidth 需要是整数向量。当您使用单个方括号[dat 进行子集化时,生成的对象是data.frame(有关此内容的更多信息,请参见?`[.data.frame`)。试试吧

    s <- dat[[2]]
    e <- dat[[3]]
    l <- dat[[4]]
    

    获取整数向量。

    【讨论】:

      猜你喜欢
      • 2014-09-18
      • 1970-01-01
      • 1970-01-01
      • 2017-10-23
      • 1970-01-01
      • 1970-01-01
      • 2016-11-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多