R减去行名称使名称有时无法访问

时间:2017-03-29 07:38:05

标签: r string format

我有一个错误,我无法用较小的示例重新创建,所以我希望任何人都知道在哪里查看。

问题

如代码注释中所述:rownamesX在矩阵的rownames中找不到(但它们当然在那里)。如果我打印未找到的名字,会出现类似的内容:

  • hsaâ'miRâ'00

应该是

  • HSA-的miR-00

此外,我测试了一些不同的方法:

  • 如果我直接在控制台的Rstudio中输出下标(ctrl-shift -s热键),则代码有效
  • 如果我在控制台中调用该功能(行上的Ctrl-Enter)
  • ,则代码有效
  • 如果下标是在主脚本中通过(行中的Ctrl-Enter)来源代码,则代码不起作用
  • 如果整个main.R来源代码不起作用(ctrl-shift-s热键)

我的环境:

  1. 数据矩阵
    • ~200k元素
    • “type-type2-number”形式的rownames
    • colnames(= samples):“S1”,“S2”,...
  2. 电话:
    • 主要脚本
      • 提供下标
        • 提供功能
        • 使用数据矩阵作为参数
        • 调用该函数
  3. 功能:

    myFunction <- function(rownamesX = c("type-type2-number")
                           ,mat){
        indexes <- which(rownames(mat) %in% rownamesX) # This is empty
        mat.part <- mat[indexes, ] # therefore his is empty
        resp <- mat.part[1, ] - mat.part[2, ] # therefore this yields an error 
    }
    

1 个答案:

答案 0 :(得分:1)

错误很简单: 有多个&#34; - &#34;:

-

-

这两个在Rstudio中看起来比在这里更平等。所以当第二个(较小的)在rowname中时,我寻找第一个(较大的)