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)
- adat = ez lesz az, amin lefut a “végrehajtandó feladat”
- a function(x) utáni rész mondja meg, hogy mi lesz a “végrehajtandó feladat”
- végrehajtandó feladat
1 2 3 4 5 6 7 8 9 10 11 12 13 |
library(parallel) # példa (1): system.time(mclapply(1:2, function(x) Sys.sleep(5))) # user system elapsed # 0.008 0.015 5.016 # példa (2): adat<-1:2 alvas<-function(x){Sys.sleep(5)} system.time(mclapply(adat,function(x) alvas(x))) # user system elapsed # 0.014 0.011 5.013 |
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.
Via bior.hu