我正在尝试构建一个包,它运行良好,但在运行 R CMD check my.package
时收到警告
* checking Rd metadata ... WARNING
Rd files with duplicated alias 'show,whitetest-method':
'show-methods.Rd' 'whitetest-class.Rd'
我的包只包含一个函数,它保存在文件
name.R
中。但是,在这个 name.R
文件中,我首先需要创建一个新类(称为 whitetest
),然后为其定义 show
方法。它非常简单,如下所示:# Create the new class whitetest
setClass("whitetest", representation("list"))
# Specify the appearance of the output
setMethod("show", "whitetest", function(object) {
text1 <- "White's Test for Heteroskedasticity:"
cat(paste("\n", text1, "\n", sep = ""))
row <- paste(rep("=", nchar(text1)), collapse = "")
cat(row, "\n")
cat("\n")
cat(" No Cross Terms\n")
cat("\n")
cat(" H0: Homoskedasticity\n")
cat(" H1: Heteroskedasticity\n")
cat("\n")
cat(" Test Statistic:\n")
cat("", sprintf("%.4f", object$statistic), "\n")
cat("\n")
cat(" Degrees of Freedom:\n")
cat("", object$degrees, "\n")
cat("\n")
cat(" P-value:\n")
cat("", sprintf("%.4f", object$p.value), "\n")
})
然后我在这个
package.skeleton()
文件上运行 name.R
命令。在我的 man
文件夹中,文件 show-methods.Rd
和 whitetest-class.Rd
是导致问题的原因。 show-methods
文件的第一行是:\name{show-methods}
\docType{methods}
\alias{show-methods}
\alias{show,whitetest-method}
whitetest-class
文件的第一行是:\name{whitetest-class}
\Rdversion{1.1}
\docType{class}
\alias{whitetest-class}
\alias{show,whitetest-method}
我知道这些是导致警告的原因,但我到底如何解决这个问题?
最佳答案
好的,我找到了解决方案。 \alias{show,whitetest-method}
行同时在 show-methods.Rd
和 whitetest-class.Rd
中。错过这是一件愚蠢的事情,我本打算删除这个帖子,但我想我会留下它,以防其他人犯同样的错误。
关于r - 在 R 中构建包,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15121312/