【问题标题】:R minus in row name makes name sometimes unaccessible行名称中的 R 减号使名称有时无法访问
【发布时间】:2017-03-29 07:38:05
【问题描述】:

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

问题

如 code-cmets 中所述:在矩阵的行名中找不到 rownamesX(但它们当然存在)。如果我打印未找到的名称,则会出现以下内容:

  • hsaâˆ'miRâˆ'00

应该是

  • hsa-miR-00

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

  • 如果我直接在控制台的 Rstudio 中获取下标(ctrl-shift-s 热键),则代码有效
  • 如果我在控制台中调用该函数,代码就可以工作(Ctrl-Enter 就行了)
  • 如果下标是通过(Ctrl-Enter 就行)在主脚本中获取的,则代码不起作用
  • 如果整个 main.R 是源代码(ctrl-shift-s 热键),则代码不起作用

我的环境:

  1. 数据矩阵
    • ~200k 元素
    • “type-type2-number”形式的行名
    • 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 
    }
    

【问题讨论】:

  • 对不起,这只是一个最小的工作示例,我当时没有想到矩阵命名

标签: r string format


【解决方案1】:

这个错误很简单: 有多个“-”:

-

-

这两个在 Rstudio 中看起来比在这里更加平等。因此,当第二个(较小的)在行名中时,我寻找第一个(较大的)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-04-27
    • 1970-01-01
    • 2017-02-04
    • 2016-06-08
    • 2018-11-04
    • 2014-10-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多