1. Grâce à ce formulaire vous pouvez proposer une astuce ou un script sur R.
  2. Votre script doit pouvoir être lancé en l'état. Veuillez penser à :
    • inclure le chargement des "library" nécessaires
    • construire un petit jeu de données si besoin est.
    • commenter les lignes de codes pour en faciliter la compréhension.
  3. Le titre de votre script ou astuce doit être clair et explicite.
  4. Pensez à mettre votre code entre les balises [R] et [/R]; Pour cela, vous pouvez utiliser le bouton

Vous pouvez utiliser vos comptes Facebook, twitter ou google pour vous identifer (google est compatible yahoo, openID...)
L'ideal étant de vous connecter si vous avez un compte utilisateur, ou faire une demande de compte utilisateur si vous n'en avez pas encore.
Créer un compte va vous permettre de pouvoir éditer vos codes et de mettre en avant votre site internet.
Sinon vous pouvez soumettre anonymement en remplissant les champs ci-après.







Choisissez les catégories correspondantes à votre Code:

  • algorithmique
  • Analyse de survie
  • base indispensable
  • bayésien
  • configuration de R
  • exportation de données
  • fonctions utiles
  • graphique
  • importation de données
  • inférence
  • manipulation de données
  • message d'erreur
  • modélisation
  • Non classé
  • optimisation
  • planification
  • programmer avec R
  • regression linéaire
  • Test
  • tidyverse
  • Transformation de données


Comment utiliser la parallélisation des calculs avec R ?: foreach

2
dans algorithmique, fonctions utiles, programmer avec R
la parallélisation des calculs, permet d’exploiter au maximum les capacité calculatoire de votre ordinateur en utilisant tous les core de votre machine ( dual core , quad core …)
Cette facpon de proceder est rentable si le calcul que vous voulez faire prend plus de temps que le fait de mettre en place la parallélisation

 
library(foreach)
library(doSNOW)
getDoParWorkers()
registerDoSNOW(makeCluster(4, type = "SOCK"))# 2 , 4 ou plus en fonction de votre machine
getDoParWorkers()
N <- 10^4
system.time(foreach(i = 1:N,.combine = "cbind") %do% {sum(rnorm(N))})
system.time(foreach(i = 1:N,.combine = "cbind") %dopar% {sum(rnorm(N))})
 
 

Proposé par Vincent.

Ce script vous à rendu service? remerciez l'auteur en votant ici:
- ça ne sert à rien -- c\'est interessant - (score de +5 sur 5 votes)
Loading ... Loading ...

2 Comments

  1. Jean-René
    Posté le 11 septembre 2015 a 8 h 59 min | Permalink

    Bonjour Vincent,Merci pour ce bout de code qui permet de se familiariser avec la parallélisation.Lorsque je le lance, ma console R travaille indéfiniement si je n’appuie pas sur ‘Echap’, à cause de la fonction makeCluster().Aurais-tu une idée sur la cause du problème ?

  2. Jean-René
    Posté le 11 septembre 2015 a 9 h 33 min | Permalink

    Re-bonjour,J’ai finalement trouvé la solution à mon problème. J’utilisais une version trop récente de R (3.0.2) pour laquelle, certains packages comme ‘parallel’ ne sont plus disponibles. J’ai alors téléchargé une ancienne version (2.15.3) et maintenant, cela fonctionne.Merci quand même.

Poster un commentaire


Votre email ne seras jamais communiqué champs requis désigné par une *

*
*


− quatre = 3

Formation logiciel R