r修改并重建包

Rob*_*Rob 13 rebuild r package

我正在尝试使用SemiMarkov包,我想在那里更改一小段代码.我做了一些挖掘:

getAnywhere("semiMarkov")
Run Code Online (Sandbox Code Playgroud)

我已经确定要更改此行:

hessian <- diag(ginv(hessian(V, solution)))
Run Code Online (Sandbox Code Playgroud)

尝试类似的东西:

hessian <- diag(ginv(pracma::hessian(V, solution)))
Run Code Online (Sandbox Code Playgroud)

我该怎么做?我是否需要从头开始重建软件包,如果是这样,我需要rTools等,或者是否有一个简单的解决方法(我是一个相关的R新手)?我做了一些在线搜索,找不到任何明显的东西.任何想法/指针感激不尽.

Jos*_*ien 18

如果您只想在交互式R会话中测试该更改的效果,可以使用trace().这是如何做:

  1. 类型 trace("semiMarkov", edit=TRUE)
  2. 在启动的文本编辑器中,编辑感兴趣的行.
  3. 保存修改后的文件.
  4. 关闭文本编辑器
  5. 回到R,使用修改后的函数.


blo*_*ong 15

Linux环境

从CRAN下载软件包源开始.

下载并解压缩源代码:

wget https://cran.r-project.org/src/contrib/SemiMarkov_1.4.2.tar.gz
tar -xvzf SemiMarkov_1.4.2.tar.gz
Run Code Online (Sandbox Code Playgroud)

这应该导致一个名为的目录SemiMarkov.打开source(cd SemiMarkov),并根据需要进行修改.

接下来,构建更改:

cd ..
R CMD build SemiMarkov/
Run Code Online (Sandbox Code Playgroud)

这将导致名为的新存档文件SemiMarkov_1.4.2.tar.gz.

最后,安装修改后的存档:

R CMD INSTALL SemiMarkov_1.4.2.tar.gz
Run Code Online (Sandbox Code Playgroud)

Windows环境

我对Windows平台不太熟悉.*nix工具在Cygwin中可用,但很痛苦.相反,正如Josh O'Brien指出的那样,您应该遵循R安装和管理手册中的Windows特定说明.

  • 相反,您应该 *仔细* 遵循 [Windows 特定说明](https://cran.r-project.org/doc/manuals/r-release/R-admin.html#The-Windows-toolset)在 R 安装和管理手册中。(链接的附录指出,“*本附录包含许多规范性评论。它们是痛苦经历的结果。”* 如果您想要相对无痛苦的体验,我建议您认真对待该警告!)一旦你有了合适的工具集,安装修改后的包就像执行 `devtools::install("SemiMarkov")` 一样简单。 (2认同)