2017-09-13 55 views

回答

0


不幸的是,並行化不是spatstat, 不可分割的一部分,而是留給用戶。對於信封和MAD測試,最簡單的 選項可能會在每個核心上運行envelope以及更少數量的 實現,然後使用 pool.envelope合併結果。如何並行運行envelope可能取決於您的 設置。一個簡單的可能性是使用parallel::mclapply我知道 作品了在Linux上的方塊,但更好的跨平臺 替代品的包裝肯定可在CRAN:

library(spatstat) 
ppplist <- replicate(4, cells, simplify = FALSE) 
envlist <- parallel::mclapply(ppplist, spatstat::envelope, savefuns = TRUE, nsim = 10) 
envfinal <- do.call(pool, envlist) 
envfinal 
#> Pointwise critical envelopes for K(r) 
#> and observed value for 'X[[i]]' 
#> Obtained from 40 simulations of CSR 
#> Alternative: two.sided 
#> Significance level of pointwise Monte Carlo test: 2/41 = 0.0488 
#> ..................................................................... 
#>  Math.label  Description          
#> r r    distance argument r        
#> obs hat(K)[obs](r) observed value of K(r) for data pattern   
#> theo K[theo](r)  theoretical value of K(r) for CSR     
#> lo hat(K)[lo](r) lower pointwise envelope of K(r) from simulations 
#> hi hat(K)[hi](r) upper pointwise envelope of K(r) from simulations 
#> ..................................................................... 
#> Default plot formula: .~r 
#> where "." stands for 'obs', 'theo', 'hi', 'lo' 
#> Columns 'lo' and 'hi' will be plotted as shading (by default) 
#> Recommended range of argument r: [0, 0.25] 
#> Available range of argument r: [0, 0.25] 
+0

謝謝。我將嘗試這一點,並在幾天內彙報。 – BKS

相關問題