# Thu Sep 10 01:04:04 2020 -
# 字符编码:UTF-8
# R 版本:R x64 4.0.2 for window 10
# cgh163email@163.com
# 个人笔记不负责任
# —— 拎了个梨🍐
rm(list=ls());gc()
.rs.restartR()
require(raster)
# Thu Sep 10 01:04:55 2020 -cluster使用多核集群-----------------------------
# 此功能对于加快预测,内插甚至计算等功能的计算特别有用。
#
beginCluster()
# 使用多核集群
#
# beginCluster确定可用节点(核心)的数量并使用所有这些节点(除非使用了参数n)。
beginCluster() # 有几个核心可用
endCluster() # 关闭集群并删除对象。
# Thu Sep 10 01:22:16 2020 --
# n 整数。 要使用的节点数(可选)
# type 字符。 要使用的集群类型
# nice 整数。 设置工作人员的自付费用,介于-20和20之间(仅适用于UNIX之类的平台)
# exclude 字符。 要从节点上加载的软件包排除在外(因为它们可能在那里失败),但在主服务器上需要/已加载
# x 栅格*对象
# fun 以x为第一个参数的函数
# args 列出函数的参数(x除外,x始终应为第一个参数)
# export 字符。 要导出到集群节点的变量名的向量,以便使它们可见(例如,未作为参数传递的参数)
# filename 字符。 输出文件名(可选)
# cl 集群对象(如果已调用beginCluster(),请不要使用它
# m 调整参数以确定应使用多少个块。 将数字四舍五入并乘以节点数。
# Thu Sep 10 01:22:21 2020 --
## Not run:
# set up the cluster object for parallel computing
beginCluster()
r <- raster()
values(r) <- 1:ncell(r)
plot(r)
x <- clusterR(r, sqrt, verbose=T)
f1 <- function(x) calc(x, sqrt)
y <- clusterR(r, f1)
plot(y)
s <- stack(r, r*2, r*3)
f2 <- function(d,e,f) (d + e) / (f * param)
param <- 122
ov <- clusterR(s, overlay, args=list(fun=f2), export='param')
pts <- matrix(c(0,0, 45,45), ncol=2, byrow=T)
d <- clusterR(r, distanceFromPoints, args=list(xy=pts))
values(r) <- runif(ncell(r))
m <- c(0, 0.25, 1, 0.25, 0.5, 2, 0.5, 1, 3)
m <- matrix(m, ncol=3, byrow=TRUE)
rc1 <- clusterR(r, reclassify, args=list(rcl=m, right=FALSE),
filename=rasterTmpFile(), datatype='INT2S', overwrite=TRUE)
#等效操作:
rc2 <- reclassify(r, rcl=m, right=FALSE, filename=rasterTmpFile(), datatype='INT2S', overwrite=TRUE)
# example with the calc function
a <- 10
f3 <- function(x) sum(x)+a
z1 <- clusterR(s, calc, args=list(fun=f3), export='a')
# #对于某些使用另一个函数作为参数的栅格函数#您可以编写自己的并行函数,而不是使用clusterR
# #获取使用beginCluster创建的集群对象
cl <- getCluster()
library(parallel)
clusterExport(cl, "a")
z2 <- calc(s, fun=function(x){ parApply(cl, x, 1, f3)} )
# #设置标志集群再次可用
returnCluster()
#
# 用集群对象完成
endCluster()
## End(Not run)
R语言,raster包,cluster函数多和集群(渲染)
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...