在我的 R 包中提供 S4 方法

时间:2021-02-10 11:30:43

标签: r package s4

我正在编写 R 包,并且通常在标头中使用 ::@import/@importFrom 加载我的函数。这适用于大多数软件包。但是,我使用的是使用 S4 对象和方法的 STRINGdb 包。我不确定如何使这个包的特定方法可用于我的函数。

我想在我的描述文件中将它移到 Suggests 而不是 Imports,所以我无法使用 @import 加载它。它使用以下结构的函数:

 string_db <- STRINGdb$new(
    version = "11",
    species = organism_id, 
    score_threshold = score_threshold, 
    input_directory = ""
  )

payload_id <- string_db$post_payload(coloring$database_string,
      colors = coloring$color

我能够通过 STRINGdb 使用 S4 类生成函数 get()

STRINGdb <- get("STRINGdb", envir = loadNamespace("STRINGdb"))

string_db <- STRINGdb$new(
  version = "11",
  species = 511145, # Check on String database to get the right code (E.coli K12: 511145)
  score_threshold = 0.900, # Cutoff score to consider something an interaction
  input_directory = ""
)

不知道这是否是一种特别好的方法,但它似乎有效。我不确定 post_payload 等方法。我怎样才能使它们可用?使用 string_db$STRINGdb::post_payload 不起作用。

非常感谢您的帮助!

0 个答案:

没有答案
相关问题