【发布时间】:2019-08-19 09:20:38
【问题描述】:
所以我尝试在 R 中构建我的第一个包,但是当我运行 check() 时出现错误,我不确定如何修复。
我得到的错误是:
文档对象“monthly.rainR”中未记录的参数 ‘数据库’
带有 \usage 条目的函数需要有适当的 \alias 条目,并记录他们的所有论点。 \usage 条目必须对应于语法上有效的 R 代码。
我看过 Hadley 的书并尝试了一些我在网上找到的建议......但似乎没有一个解决方案有效
roxygen2 文档如下所示:
% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/Simple.stats_rainR.R
\name{monthly.rainR}
\alias{monthly.rainR}
\title{Stand alone monthly rain plots:}
\usage{
monthly.rainR(database)
}
\value{
12 monthly average rainfall plots
}
\description{
Stand alone monthly rain plots:
}
\examples{
rain4 = load_rain()
monthly.rainR(rain4)
}
我的monthly.rain() 函数如下所示:
#' Stand alone monthly rain plots:
#'
#' @return 12 monthly average rainfall plots
#' @export
#'
#' @examples
#' rain4 = load_rain()
#' monthly.rainR(rain4)
monthly.rainR = function(database){
# Seperate by Month:
# avm <- matrix(rain_month$rainfall[1:1932], ncol = 12, byrow = TRUE)
avm <- matrix(database$r_month$rainfall[1:1932], ncol = 12, byrow = TRUE)
# Compute annual average:
avb <- seq(0,length = 161)
for(y in 1:161){avb[y] = mean(avm[y,])}
# Put monthly averages and annual average in a matrix:
avmb = cbind(avm, avb)
# Plot 12 panels on the same figure:
plot.new()
timeyr = database$r_year$year
par(mar=c(1,1,1,1))
par(mfrow = c(6,2)) # 4 rows & 3 cols
par(mgp = c(2,1,0))
for(i in 1:12){
plot(timeyr, avmb[,i], type = "l", ylim = c(10,190),
xlab = "Year", ylab = "Rainfall",
main = paste("month is", i, split = ""))
lm.rainR.monthly <- lm(avmb[,i] ~ timeyr)
abline(lm.rainR.monthly, col="red")
}
}
我是编写包的新手,所以我不确定这里发生了什么。任何建议都会很棒。
【问题讨论】:
-
在
@return之前需要添加@param database以便参数有文档。 -
啊当然...我不知道我是怎么错过的...谢谢