当我在顶级对象上调度时,所有函数都会导出到命名空间。一切都按照我的预期运作。
myfun <- function(obj) {
UseMethod("myfun",obj)
}
#' @export
myfun.this <- function()
命名空间:
S3Method(myfun,this)
export(myfun)
但是当我尝试在我的对象中发送一个元素时......
#' Subsets recoded data by a condition
#'
#' This function filters a list, data.frame or vector by a condition
#'
#' @param so A surv3 object
#' @param condition A positively stated condition or logical vector
#' @export
subset.surv3 <- function(so, condition) {
UseMethod("subset.surv3",so$recoded) # THIS PART
}
#' @export
subset.surv3.categorical <- function(so, condition) {
....
return(so)
}
#' @export
subset.surv3.continuous <- function(so, condition) {
...
return(so)
}
命名空间:
S3method(subset,surv3.categorical)
S3method(subset,surv3.continuous)
但是,不会导出这些功能。
我原以为:
export(subset.surv3.categorical)
export(subset.surv3.continuous)
我做错了什么?
答案 0 :(得分:0)
我在这里发布类似的东西:
但是,毕竟,S3调度应该通过通用函数:
这应该没有“显式”方法导出。