Nagyon sok érdekes és hasznos csomag található meg a CRAN-on, ezek közül szeretnénk bemutatni párat. Először a parallel csomagot, amivel egyszerre több szálon futtathatunk elemzéseket. Ehhez az mclapply() függvényre lesz szükségünk:
parancs: mclapply(adat,function(x) végrehajtandó feladat)
1. adat = ez lesz az, amin lefut a “végrehajtandó feladat”
2. a function(x) utáni rész mondja meg, hogy mi lesz a “végrehajtandó feladat”
3. végrehajtandó feladat
01 02 library(parallel)03 04 # példa (1):
05 system.time(mclapply(1:2, function(x) Sys.sleep(5)))06 # user system elapsed
07 # 0.008 0.015 5.016
08 09 # példa (2):
10 adat<-1:211 alvas<-function(x){Sys.sleep(5)}12 system.time(mclapply(adat,function(x) alvas(x)))13 # user system elapsed
14 # 0.014 0.011 5.013
15
A példa (2)-ben egy saját függvényt készítettünk, majd hívtunk meg. Saját függvénnyel gyakorlatilag bármit többszálúsíthatunk. 🙂
Ilyen egyszerű 🙂 Legalábbis Linuxos rendszer alatt 🙁
A Windows-os rendszer másképpen kezeli a többmagos rendszereket, ezért módosítani kell az mclapply()-t. Ezt az alábbi link segítségével tehetjük meg:
Módosított mclapply()
Egyszerűen behívjuk az R-be a linken megadottakat és máris működni fog Windows alatt is 😀
“Parallel” bejegyzéshez egy hozzászólás