在这种方法中,最适合放置测试数据文件的地方是什么?我指的是仅由测试/测试中的测试脚本使用的文件,但不是R /中的任何其他函数.
我当前的方法是将它们放在tests/testdata中,然后使用相对路径而不是system.file从那里读取.(为了避免需要安装包来运行测试).
到目前为止,是否有任何最佳实践?
我最近在Win 7机器上升级到Architect版本0.9.7.但是,启动Architect后,RJ控制台无法启动,我收到错误消息:
‘Launching the R Console was cancelled, because It seems starting the R engine failed.”
Please make sure that R package 'rj' (2.0 or compatible) is installed and
that the R library paths are set correctly for the R environment
configuration 'Embedded R Server'.
Run Code Online (Sandbox Code Playgroud)
我使用www.walware.de上建议的命令在Architect内部通过RTerm运行控制台安装了软件包'rj'和'rj.gd'(确实有效):
install.packages(c("rj", "rj.gd"), repos="http://download.walware.de/rj-2.0")
Run Code Online (Sandbox Code Playgroud)
然后,我重新启动了Windows,并重新启动了Architect.相同的错误消息.我放大了错误消息的详细信息,并注意到以下行:
SEVERE: Path to rj package not found. Use R_LIBS or java property
'de.walware.rj.rpkg.path' to specify the location.
Run Code Online (Sandbox Code Playgroud)
所以我打开了一个RTerm运行控制台来检查我的.libPaths()位置是否包含目录'rj'或'rj.gd'.奇怪的是,他们做到了.我的第一个.libPaths路径包含两个包.所以这似乎不是原因.怎么能修好?
我有一个包"javaOnLoadFailed"(只是用于测试我的问题的最小包,因此是奇怪的名称),它导入了rJava.当我尝试检查()或安装()包时,我得到'rJava'错误,即使require(rJava)本身工作正常.
install()给出以下错误:
> install()
Installing javaOnloadFailed
"C:/Program Files/R/R-3.2.0/bin/x64/R" --no-site-file --no-environ --no-save \
--no-restore CMD INSTALL \
"C:/Projects/stackoverflow/javaOnloadFailed/javaOnLoadFailed" \
--library="C:/Users/adb2018/Documents/R/win-library/3.2" --with-keep.source \
--install-tests
* installing *source* package 'javaOnloadFailed' ...
** R
** preparing package for lazy loading
** help
*** installing help indices
** building package indices
** testing if installed package can be loaded
*** arch - i386
Error : .onLoad failed in loadNamespace() for 'rJava', details:
call: inDL(x, as.logical(local), as.logical(now), ...)
error: unable to load shared object 'C:/Users/adb2018/Documents/R/win-library/3.2/rJava/libs/i386/rJava.dll':
LoadLibrary …Run Code Online (Sandbox Code Playgroud) 考虑一个多面的ggplot
plotdf <- data.frame(x = 1:21,
y = 3*(1:21)+4,
z = c(rep(1,3), rep(2,3), rep(3,3), rep(4,3), rep(5,3), rep(6,3), rep(7,3)))
p <- ggplot2::ggplot(plotdf) +
ggplot2::geom_point(ggplot2::aes(x=x,y=y)) +
ggplot2::facet_wrap(~ z)
Run Code Online (Sandbox Code Playgroud)
如何从 p 中提取行数(或列数)?
p$facet 似乎包含相关信息:
p$facet
<ggproto object: Class FacetWrap, Facet>
compute_layout: function
draw_back: function
draw_front: function
draw_labels: function
draw_panels: function
finish_data: function
init_scales: function
map: function
map_data: function
params: list
render_back: function
render_front: function
render_panels: function
setup_data: function
setup_params: function
shrink: TRUE
train: function
train_positions: function
train_scales: function
super: <ggproto object: Class FacetWrap, …Run Code Online (Sandbox Code Playgroud)