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


Les scripts R de Diane

Comment fixer et reproduire l’aléatoire ? set.seed()

0
dans algorithmique
- ça ne sert à rien -- c\'est interessant - (score de +2 sur 2 votes)
Loading ... Loading ...
Afin d’utiliser des processus aléatoires mais de faire en sorte qu’ils soient reproductibles dans le temps ou sur une autre machine/système
set.seed()
est une fonction qui permet de fixer les résultats qui seront fournis par le RNG (random number generator).

 
sample(letters[4:9]) 
[1] "d" "g" "f" "h" "i" "e" 
sample(letters[4:9]) 
[1] "e" "i" "g" "f" "h" "d" 
sample(letters[4:9]) 
[1] "f" "d" "e" "h" "i" "g"
 
set.seed(123)
sample(letters[4:9]) 
[1] "e" "g" "i" "f" "h" "d" 
set.seed(123) 
sample(letters[4:9]) 
[1] "e" "g" "i" "f" "h" "d"
 
 


Comment choisir le chiffre à mettre dans la fonction set.seed ? Au hasard ! 😉


Proposé par Diane.

Pas encore de commentaire, cliquez ici pour réagir.

Droplevels() ou comment se débarrasser efficacement de niveaux de facteurs inutilisés

0
dans base indispensable
- ça ne sert à rien -- c\'est interessant - (score de +2 sur 2 votes)
Loading ... Loading ...

 
 jdd <- data.frame(deslettres=letters[1:10], 
                   desnombres=seq(1:10), 
                   desfacteurs=c(rep("oui",5), rep("non", 5))) 
 
 levels(jdd$deslettres)
 [1] "a" "b" "c" "d" "e" "f" "g" "h" "i" "j"
 # il y a 10 niveaux pour la variable qualitative "deslettres"
 
 # en filtrant sur les nombres....
 library(dplyr)
 unextrait<-filter(jdd,desnombres > 5)
 levels(unextrait$deslettres)
 [1] "a" "b" "c" "d" "e" "f" "g" "h" "i" "j" 
 # ...le nouveau jeu de données garde les anciens noms de niveaux de "deslettres"
 



Pour s’en débarrasser, depuis R 2.12.0, la fonction droplevels() rend cette opération aisée…


 
 
 # ...sur tout le jeu de données :  
 droplevels(unextrait)
 summary(unextrait) 
 
 
 # ...sur une variable en particulier : 
 droplevels(unextrait$deslettres)
 summary(unextrait)
 
 # ...sur tout le jeu de données sauf celle mentionnées dans l'argument except : 
 droplevels(unextrait, except="desfacteurs")
  
  
 

Proposé par Diane.

Pas encore de commentaire, cliquez ici pour réagir.
Formation logiciel R