13

我写了一个小包供我自己使用,使用 devtools 一切都很顺利。但是,我尝试在其上运行 R CMD Check,但出现了许多错误,这似乎是因为我的用法和示例使用了不在我的包中的基本 R 中的函数,例如这是我的最小函数和 roxygen 文档

#' Function to Sort a dataframe with a given list of columns
#' Cribbed from Spector, P. (2008). "Data Manipulation with R", UseR! Springer. Pg78
#' @param df Dataframe to be sorted
#' @param ... list of columns to sort on
#' @return A sorted dataframe
#' @author "Paul Hurley"
#' @export
#' @usage with(dataframe,sortframe(dataframe,column1, column2, column3))
#' @examples with(iris,sortframe(iris,Sepal.Length,Sepal.Width,Petal.Length))
sortframe<-function(df,...){df[do.call(order,list(...)),]}

和 R CMD Check 给出

Undocumented arguments in documentation object 'sortframe'
  'dataframe' 'sortframe(dataframe, column1, column2, column3)'
Documented arguments not in \usage in documentation object 'sortframe':
  'df' '...'
Objects in \usage without \alias in documentation object 'sortframe':
  'with'

有没有办法告诉 R CMD Check / roxygen2 这些功能在 base 中描述?

4

1 回答 1

3

您不应该包含@usage标签。Roxygen 会从你的代码中推断出来。你@usage真的是一个例子。R 抱怨是因为您指的是根本不在您的函数定义中的对象。 @usage, 如果你坚持自己装,应该只引用sortframe, df, 和.... 既然你已经有了一个@example,你应该可以省略@usage标签。

于 2014-07-29T23:28:39.810 回答