Comment faire un exemple reproductible minime pour obtenir de l'aide r

Lorsque vous demandez à la communauté de R à l'aide, vous obtiendrez le conseil le plus utile si vous savez comment faire un exemple reproductible minime. UN exemple reproductible est un exemple de code et les données que tout autre utilisateur peut exécuter et obtenir les mêmes résultats que vous faites. UN minimal exemple reproductible est la plus petite possible par exemple de problèmes qui illustre le il se compose de ce qui suit:

  • Un petit ensemble de données de l'échantillon

  • Un court extrait de code qui reproduit l'erreur

  • Les informations nécessaires sur votre version R, le système il est exécuté sur, et les paquets que vous utilisez

Si vous voulez savoir ce qu'est un exemple reproductible minimale ressemble, jetez un oeil sur les exemples dans les fichiers d'aide R. En général, tout le code suivant dans les fichiers R Aide remplit les exigences d'un exemple reproductible minime.

Créer des exemples de données avec des valeurs aléatoires




Dans la plupart des cas, vous pouvez utiliser des données aléatoires pour illustrer un problème. R possède quelques fonctions intégrées utiles pour générer des nombres aléatoires et d'autres données aléatoires. Par exemple, pour faire un vecteur de nombres aléatoires, utiliser rnorm () pour la distribution normale ou runif () pour une distribution uniforme. Pour faire un vecteur aléatoire avec cinq éléments, essayez ce qui suit:

> Set.seed (1)> x lt; - rnorm (5)> x [1] -0,6264538 0,1836433 -0,8356286 1,5952808 0,3295078

Vous pouvez utiliser le set.seed () fonction pour spécifier une valeur de départ de départ pour générer des nombres aléatoires. En fixant une valeur de départ, vous garantissez que les nombres aléatoires sont les mêmes chaque fois que vous exécutez le code. Cela peut être inutile dans le code de production, mais il est essentiel pour un exemple reproductible. En fixant une graine, vous garantissez que votre code va produire les mêmes résultats que l'autre personne qui exécute votre code.

Si vous voulez générer des valeurs aléatoires d'un ensemble prédéterminé, utilisez le échantillon () fonction. Cette fonction est un peu comme traiter d'un jeu de cartes à jouer. Dans un jeu de cartes, vous avez 52 cartes et vous savez exactement quelles cartes sont dans le pont. Mais chaque transaction sera différent. Vous pouvez simuler traiter une main de sept cartes en utilisant le code suivant:

> Cartes lt; - c (1: 9, "J", "q", "K", "A")> costumes lt; - c ("Spades", "Diamonds", "Coeurs", "Clubs")> pont lt; - la pâte (Rep (costumes, chaque = 13), cartes)> set.seed (123)> échantillon (transats, 7) [1] "Diamonds" 2 "2" Clubs "Diamonds" 8 "Clubs" [5 5] "Clubs" 7 "Spades 3" "Diamants K"

Par défaut, échantillon () utilise chaque valeur qu'une seule fois. Mais parfois vous voulez éléments de cette section apparaissent plusieurs fois. Dans ce cas, vous pouvez utiliser l'argument remplacer = TRUE. Si vous voulez créer un échantillon de taille 12 constitué par les trois premières lettres de l'alphabet, vous utilisez ce qui suit:

> Set.seed (5)> échantillon (LETTRES [1: 3], 12, replace = TRUE) [1] "A" "C" "C" "A" "A" "C" "B" "C" "C" "A" "A" "B"

Création d'un trame de données avec l'échantillon de données est simple:

> Set.seed (42)> dat lt; - data.frame (+ x = l'échantillon (1: 5), + y = l'échantillon (c ("oui", "non"), 5, remplacer = TRUE) +)> datx Y1 5 no2 no3 4 1 oui4 2 3 no5 pas

» » » » Comment faire un exemple reproductible minime pour obtenir de l'aide r