您忘记处理DESCRIPTION文件!您只处理 impute_data.R。
你的问题很相似:
当我在我的函数中使用另一个包的函数时,我应该放什么 roxygen
我在那里给出了答案(请在发布任何问题之前搜索类似的问题)。对于您的情况:
首先,了解你的
sessionInfo()
getwd() # your R's working directory
.libPaths() # your R's library location
Step0下载并安装必要的包:
library(roxygen2)
library(devtools)
library(digest)
Step1将所有相关的“.R”文件(yourfunction1.R、yourfunction2.R、yourfunction3.R、impute_data.R)放入 R 的工作目录。
步骤 2在 R 的工作目录中创建包骨架:在运行以下命令之前,确保 R 的工作目录中没有名为“yourpackage”的文件夹。(来自 R 的控制台)
package.skeleton(name = "yourpackage", code_files = c("yourfunction1.R", "yourfunction2.R", "yourfunction3.R", "impute_data.R"), path = ".")
运行后package.skeleton
,文件夹 yourpackage 会在 R 的工作目录中创建。
Read-and-delete-me
从 Windows 资源管理器中删除文件。
删除 YourR'sWorkingDirectory\yourpackage\man 文件夹中的“yourpackage-package.Rd”文件
(不要删除 YourR'sWorkingDirectory\yourpackage\man 文件夹中的“yourpackage.Rd”文件!)
步骤 3在“.R”文件 (impute_data.R) 的序言末尾,输入以下内容(如果您在步骤 1 中没有这样做):
#' @importFrom mice mice
#' @importFrom mice complete
#' @export
impute_data <- function(...) {...
Step4在DESCRIPTION
你的包的文件中,在Imports
部分中,添加:
Imports:
mice(>= VersionNumber)
其中 VersionNumber 是您正在使用的鼠标包的版本号。您可以通过在 RevolutionREnterprise 的对象浏览器中右键单击任何函数(来自 yourpackage)找到版本号;并进入生成的 .html 帮助文件的底部。在那里,显示了包的版本号。
在 Step2 中,package.skeleton 自动生成了一个 NAMESPACE 文件,其内容为:
exportPattern("^[[:alpha:]]+")
不要手动处理此 NAMESPACE 文件。
Step5 roxygenize 你想要创建的包(“yourpackage”)
library(roxygen2)
roxygenize("yourpackage")
在 roxygenization 时,您的包的 NAMESPACE 文件的内容会自动转换exportPattern("^[[:alpha:]]+")
为
# Generated by roxygen2: do not edit by hand
export(impute_data)
importFrom(mice,mice)
importFrom(mice,complete)
Step6构建你的包:(
首先,从 Windows 资源管理器中删除 YourR'sWorkingDirectoryFolder\yourpackage 文件夹中的 "src-i386" 和 "src-x64" 文件夹(如果有的话))
(再次确保没有 "yourpackage-package.Rd " YourR'sWorkingDirectory\yourpackage\man 文件夹中的文件。如果有,请在构建之前将其删除)
build("yourpackage")
Step7安装你的包:
install("yourpackage")
Step8通过加载你的包并在包中运行一个函数来检查一切是否顺利。
library(yourpackage)
impute_data(a,b,1235) # "impute_data" is the function in the package "yourpackage"
第 9 步检查您的包是否可加载到 CRAN(综合 R 归档网络)(如果您想共享您的包):
(首先,从 Windows 资源管理器中删除 YourR'sWorkingDirectoryFolder\yourpackage 文件夹中的“src-i386”和“src-x64”文件夹(如果有))
(再次确保 YourR' 中没有“yourpackage-package.Rd”文件sWorkingDirectory\yourpackage\man 文件夹。如果有,删除前检查)
从 DOS 命令提示符:
开始 - cmd - 回车。传递到 R 的工作目录(您的 R 的工作目录通过 getwd() 知道)并进行 CRAN 检查:
cd C:\Users\User\Documents\Revolution
R CMD check yourpackage
从 R 的控制台:
devtools::check("C:/Users/User/Documents/Revolution/yourpackage")