我如何找到用 R 编写回归包的标准?

How do I find out about the standards for writing regression packages in R?

作为我工作的一部分,我需要拟合一堆 'generalised logistic' (GL)* 回归模型(有一些与这个问题无关的特殊限制)。目前没有允许我这样做的包,所以我编写了自己的函数来优化可能性。它很乱,目前还不是那么笼统,因为它是针对我需要它完成的特定工作量身定制的。

我在想把它变成一个更通用的包,这将是我写的第一个包。

我的问题是:

1) 我是否遗漏了一个技巧,是否可以将我自己的 link 函数附加到 GLM 而不是从头开始编写?

2) 他们的信息是否符合回归包预期的标准,例如预期的 "summary" 输出、输出的标准化名称、标准公式输入等?

3) 有什么好的"how to write a package in R"资源可以推荐吗?

如果需要,我很乐意提供更具体的信息。非常感谢任何回复。

最佳。

应该可以创建您自己的 GLM link 函数。您可以执行以下操作:

my_link_function <- function(mu) 
{
  # Body of your link function
}

my_inverse_link_function <- function(eta) 
{
  # Body of your inverse link function
}

my_derivative_function <- function(eta)
{
  # function describing dmu / delta
}

my_valid_eta_function <- function(eta)
{
  # return TRUE if eta is in domain of inverse_link_function, otherwise FALSE
}

my_link <- list(linkfun  = my_link_function,
                linkinv  = my_inverse_link_function,
                mu.eta   = my_derivative_function,
                valideta = my_valid_eta_function,,
                name     = "my_link")
class(my_link) <- "link-glm"

现在您可以这样做了:

glm(my_var1 ~ my_var2, family = binomial(my_link))