简短版本:我可以使用Normal
包装模拟文件吗?stats
roxygen
长版本:我正在开发一个软件包,并试图通过在一个标题下收集一些具有公共输入/参数的函数来使文档更具可读性,这将是对该组的通用引用.每个功能仍应独立地供最终用户使用.
我把文档作为灵感Normal
,给出了许多与正态分布相关的方法,例如stats::dnorm()
.
当我搜索时,?dnorm
我发现帮助部分的名称Normal
即使Normal
看起来不是导出的函数或对象.
我试过的是将以下内容放入funs.R
:
##' @rdname funs
##' @name funs
##' @aliases sum1
##' @aliases prod1
##' @title Two functions
##' @param x X
##' @param y Y
##' @return sum1 returns x+y
##' \cr
##' prod1 returns x*y
##' @examples
##' sum1(3,4)
##' prod1(3,4)
##' @export
sum1 <- function(x,y) x+y
##' @export
##' @rdname funs
prod1 <- function(x,y) x*y
Run Code Online (Sandbox Code Playgroud)
然后我继续 …
我正准备提交给CRAN的包裹.我使用R CMD build myPackage
然后R CMD check myPackage --as-cran
它通过所有检查没有注释或警告.但是,每次我尝试提交时,我都会从其中一个CRAN维护者那里收到以下错误消息:
包具有VignetteBuilder字段,但没有预先构建的晕影索引.
首先,我希望能够在我自己的系统(R version 3.0.1
)上重现上述错误消息.
晕影.Rnw
文件如下所示:
%\VignetteEngine{knitr::knitr}
%\VignetteIndexEntry{myVignetteName}
\documentclass{article}
\begin{document}
Here is some code:
<<>>=
plot(1:10, 10:100)
@
\end{document}
Run Code Online (Sandbox Code Playgroud)
我尝试INDEX
在根目录中添加一个文件,如下所示:
myFunction a brief description
abc-vignette vignette description
Run Code Online (Sandbox Code Playgroud)
再次,这传递,R CMD check myPackage --as-cran
但我得到相同的错误消息.
我也试图R CMD build myPackage --md5
强制创建一个MD5
文件,但无济于事.
当我看到myPackage.Rcheck/00_pkg_src/myPackage/inst/doc
我找到晕影文件,.Rnw
并按.pdf
预期.
包DESCRIPTION
文件具有以下条目:
VignetteBuilder: knitr
Suggests: knitr
Run Code Online (Sandbox Code Playgroud)
当我看到myPackage.Rcheck/myPackage/Meta
我看到一个条目vignette.rds …
我的数据集如下:
salary number
1500-1600 110
1600-1700 180
1700-1800 320
1800-1900 460
1900-2000 850
2000-2100 250
2100-2200 130
2200-2300 70
2300-2400 20
2400-2500 10
Run Code Online (Sandbox Code Playgroud)
如何计算此数据集的中位数?这是我尝试过的:
x <- c(110, 180, 320, 460, 850, 250, 130, 70, 20, 10)
colnames <- "numbers"
rownames <- c("[1500-1600]", "(1600-1700]", "(1700-1800]", "(1800-1900]",
"(1900-2000]", "(2000,2100]", "(2100-2200]", "(2200-2300]",
"(2300-2400]", "(2400-2500]")
y <- matrix(x, nrow=length(x), dimnames=list(rownames, colnames))
data.frame(y, "cumsum"=cumsum(y))
numbers cumsum
[1500-1600] 110 110
(1600-1700] 180 290
(1700-1800] 320 610
(1800-1900] 460 1070
(1900-2000] 850 1920
(2000,2100] 250 2170
(2100-2200] …
Run Code Online (Sandbox Code Playgroud) 我试图找到矩阵列的平均值,平均值±标准差和某些分位数(5%,50%,95%).
矩阵的尺寸为10*20(行表示样本编号,列表示时间):
现在,从这个数据集中,我想找到如上所述的分位数.我尝试了以下方法:
但这些功能只给我一个值.我希望每次都能获得上述方法(均值,标准偏差,分位数).
那么,我们如何绘制一个图表,其中x轴是时间t(t = 1到t = 20),y轴是基金值,所有5行都显示(平均值,平均值±标准差,5%分位数) ,50%分位数和95%分位数).
非常感谢您的帮助.
非常感谢
对不起,如果遗漏了一些明显的东西...有没有办法提前看到当前环境中当前存在哪些S3泛型方法(比如说<environment: R_GlobalEnv>
.基础中所有当前通用方法的列表都R
可以,但我似乎无法找到一.
我问的原因是我正在methods
为a 定义一些,其中class
一些已经是通用的S3方法所以我想事先知道而不必手动检查每一个.
例如:
isGeneric("mean")
>TRUE
isGeneric("quantile")
>FALSE
Run Code Online (Sandbox Code Playgroud)
目前我最接近的是:
ls(,all.names=TRUE)[sapply(ls(, all.names=TRUE), FUN=isGeneric)]
Run Code Online (Sandbox Code Playgroud)
如果我已经定义了一个方法(但没有给出其他可能的通用方法),那么当我在新R
会话中将它作为第一个命令提供时,会出现以下错误:
invalid subscript type 'list'
Run Code Online (Sandbox Code Playgroud) 我正在制作自己的字符串class
,我想确保CString a = "Hello " + "World!";
工作(即不会给编译器错误,如:)cannot add 2 pointers
.
我的字符串class
会char*
在需要时自动转换,因此写入printf(a)
不会破坏代码.
有没有办法替换字符周围的编译器行为?(即在引号之间"abc"
).或者,或者,更改+
操作符的行为以处理字符串?