【问题标题】:Adjust underlying code for the heatmap.2 function (gplots) in R, to change the trace argument调整 R 中 heatmap.2 函数 (gplots) 的底层代码,以更改跟踪参数
【发布时间】:2018-04-05 04:22:39
【问题描述】:

我想在 R 中的 heatmap.2 函数的代码中调整 trace 参数(热图中可见的线分割),以最终删除虚线,但保留实线。更一般地说,我还想学习如何调整用户定义的函数。

我在这里找到了有关如何执行此操作的建议:https://support.bioconductor.org/p/42819/

但是,当我调整代码中的任何内容(例如跟踪参数的行类型)(使用函数 fix() 或使用另一个名称但使用相同的代码创建一个新函数)时,我开始收到错误在 R 中找不到某些函数,例如 invalid() 和 plot.dendrogram()。我为这些功能安装了单独的软件包,但这并不能解决问题。更糟糕的是,当使用 fix() 方法时,heatmap.2 从那时起不断收到这些错误,即使我撤消了代码更改,并且我必须重新安装 gplots 包。

我不明白 heatmap.2 函数是如何毫无问题地运行它们的,但是当我调整代码时,这些底层函数已经找不到了。

TLDR:如何在 R 中安全地调整函数,尤其是 heatmap.2 函数?

任何帮助将不胜感激。

【问题讨论】:

    标签: r function heatmap adjustment


    【解决方案1】:

    通常,您应该能够通过运行heatmap.2 而不带任何选项(很多)来获取所有代码,然后将其复制并按照您的生物导体中的建议将其分配给新功能。这是普遍接受的方法。我认为这里不需要fix() 方法,因为它确实会覆盖您工作区中的对象(即,除非您清除工作区,否则更改后的heatmap.2 将优先)。 为了您的方便,我创建了一个包含正常代码的要点并将其分配给一个新函数。我会将其粘贴到您的工作目录中的一个新文件(例如 heatmap3.R)中,并在您当前的分析脚本中粘贴source("heatmap3.R")。当然你可能需要编辑这个文件,我已经注释掉了我认为是虚线的第 345-348 和 359-362 行。这应该是尝试调整现有函数时的一般策略(除非它们是 S4/S3 或内部函数,否则事情会变得更加棘手)

    <script src="https://gist.github.com/FMKerckhof/9dd986191570bec2d68fa50122c22e3a.js"></script>

    【讨论】:

    猜你喜欢
    • 2013-11-19
    • 1970-01-01
    • 1970-01-01
    • 2014-01-29
    • 1970-01-01
    • 2013-05-09
    • 1970-01-01
    • 2017-12-21
    • 1970-01-01
    相关资源
    最近更新 更多