我已成功使用降雪在具有16个处理器的单个服务器上设置群集.
require(snowfall)
if (sfIsRunning() == TRUE) sfStop()
number.of.cpus <- 15
sfInit(parallel = TRUE, cpus = number.of.cpus)
stopifnot( sfCpus() == number.of.cpus )
stopifnot( sfParallel() == TRUE )
# Print the hostname for each cluster member
sayhello <- function()
{
info <- Sys.info()[c("nodename", "machine")]
paste("Hello from", info[1], "with CPU type", info[2])
}
names <- sfClusterCall(sayhello)
print(unlist(names))
Run Code Online (Sandbox Code Playgroud)
现在,我正在寻找有关如何迁移到分布式模型的完整说明.我有4台不同的Windows机器,总共16个核心,我想用于16节点集群.到目前为止,我了解到我可以手动设置SOCK连接或利用MPI.虽然看起来有可能,但我还没有找到明确和完整的方向.
SOCK路由似乎依赖于snowlib脚本中的代码.我可以使用以下代码从主端生成存根:
winOptions <-
list(host="172.01.01.03",
rscript="C:/Program Files/R/R-2.7.1/bin/Rscript.exe",
snowlib="C:/Rlibs")
cl <- makeCluster(c(rep(list(winOptions), 2)), type = "SOCK", manual = T)
Run Code Online (Sandbox Code Playgroud)
它产生以下结果:
Manually start worker on …Run Code Online (Sandbox Code Playgroud) 我最初的目标是绘制一个单独的点群,然后绘制一个凸起的船体,其中80%的人口集中在人口的质量上.
在尝试了一些想法之后,我想出的最佳解决方案是使用ggplot's stat_density2d.虽然这对于定性分析非常有用,但我仍然需要指出80%的边界.我开始寻找一种方法来勾勒出80%的人口边界,但我可以使用80%的概率密度边界.
这是我在寻求帮助的地方.(使用者)的bin参数没有明确记录.如果我在下面的例子中设置= 4,我是否正确地将中心(绿色)区域解释为包含25%概率质量而组合的黄色,红色和绿色区域表示75%概率质量?如果是这样,通过将bin更改为= 5,那么内接区域是否会等于80%的概率质量?kde2dstat_density2dbin
set.seed(1)
n=100
df <- data.frame(x=rnorm(n, 0, 1), y=rnorm(n, 0, 1))
TestData <- ggplot (data = df) +
stat_density2d(aes(x = x, y = y, fill = as.factor(..level..)),
bins=4, geom = "polygon", ) +
geom_point(aes(x = x, y = y)) +
scale_fill_manual(values = c("yellow","red","green","royalblue", "black"))
TestData
Run Code Online (Sandbox Code Playgroud)

我重复了一些测试用例并手动计算了被排除的点[希望找到一种方法来计算它们基于...它们被包含在内的......等级]但是考虑到数据的随机性(我的真实数据和测试数据)该stat_density2d区域以外的点数变化足以保证寻求帮助.
总而言之,是否有一种实用的方法可以在数据框中的80%中心点周围绘制多边形?或者说,我可以安全使用stat_density2d并将bin设置为5以产生80%的概率质量?
布莱恩汉森的优秀答案消除了模糊的概念,即我可以传递一个未记录的bin参数stat_density2d.结果看起来接近bin4到6左右的值,但正如他所说,实际功能是未知的,因此无法使用.
我使用了DWin接受的答案中提供的HDRegionplot来解决我的问题.为此,我添加了一个重心(COGravity)并指向包中的polygon(pnt.in.poly) …
下面的示例文档旨在在附录后包含索引。在 Sweave 文档中,Rstudio 将运行 shell 转义命令来创建索引 .idx 文件,但我无法找到对 Rmarkdown 文档执行此操作的方法。我缺少一个简单的标题命令吗?
---
title: "Untitled"
output:
pdf_document:
toc: yes
header-includes:
- \usepackage{makeidx}
- \makeindex
---
```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE)
```
# R Markdown
This is an \index{R Markdown} R Markdown document. Markdown is a simple formatting syntax for authoring HTML, PDF, and MS Word documents. For more details on using R Markdown see <http://rmarkdown.rstudio.com>.
# Appendix - A
End of the document
\printindex
Run Code Online (Sandbox Code Playgroud)
我已经通过“编织”按钮尝试过此操作并使用:
rmarkdown::render(rmd.file, output_format = "pdf_document", clean = …Run Code Online (Sandbox Code Playgroud)