# ************************ # Si vous avez ouvert le fichier dans votre navigateur Internet, vous pouvez faire un # copier-coller du texte dans Tinn-R ou R Editor. Le plus simple est probablement de # revenir à la page précédente et de faire Enregistrer sous... # Tout au long du texte, des POINTs sont placés. Ils permettent de se retrouver dans # le texte. # ************************ # POINT intro # Voici quelques manipulations simples pour se familiariser avec l'environnement R # L'utilisation d'un script permet de répéter certaines opérations pour la manipulation # de données ou l'exécution de fonctions souvent utilisées. # Notez que le symbole # permet d'insérer des lignes de commentaires qui ne seront # pas exécutées. # Pour exécuter une ligne à la fois, deux choix, d'abord si on utilise R edit, allez # dans le menu EDITION, choississez EXÉCUTER LA LIGNE OU LA SÉLECTION. # Dans Tinn-R, utilisez l'icône SEND CURRENT LINE dans la barre d'outil. # POINT 01 # La fonction read.table() permet de récupérer des données contenu dans un fichier. # Pour bien fonctionner, cette fonction doit référer à un fichier ayant une forme # précise. # Exécuter la ligne suivante. matrice_donnees <- read.table("http://pages.usherbrooke.ca/asaubin/r_project/data/donnees_intro_a.data") # si cette fonction retourne une erreur (probablement à cause d'un problème lié à # votre connexion Internet, téléchargez le fichier et exécuter la ligne suivante (en # prenant soin d'enlever le dièse au début de la ligne et en mettant le bon chemin) # Pour télécharger le fichier, allez à l'adresse http://pages.usherbrooke.ca/asaubin/r_project/data/ # matrice_donnees <- read.table("C://CHEMIN D'ACCÈS À MODIFIER/donnees_intro_a.data") # Pour afficher la matrice, il suffit d'appeler son nom. matrice_donnees # Vous remarquerez qu'il s'agit d'une matrice de résultats de 20 étudiantes et # étudiants (E1 à E20) à 6 questions (Q1 à Q6). # Nous allons faire des manipulations de base avec ces données. Vous remarguerez que # l'organisation des données est sous forme d'une matrice (20 lignes (rows) et # 6 colonnes (columns)) # POINT 02 # D'abord, il est peut être intéressant de connaitre les résultats totaux de chaque # étudiant. Chaque ligne représentant un étudiant, il faut donc additionner chaque # ligne. La fonction rowSums() permet d'additionner les lignes d'une matrice. resultats_etudiants <- rowSums(matrice_donnees) # Encore une fois, pour afficher les résultats, il faut appeler le nom de la matrice # des valeurs resultats_etudiants # Calculons la moyenne du test. La fonction mean() permet de calculer la moyenne. moyenne_etudiants1 <- mean(resultats_etudiants) moyenne_etudiants1 # La moyenne est donc de 42 (sur 60) # Nous aurions pu obtenir la moyenne directement de la matrice de départ. moyenne_etudiants2 <- mean(rowSums(matrice_donnees)) moyenne_etudiants2 # La moyenne est la même, n'est-ce pas! # POINT 03 # La fonction var() permet de calculer la variance. Cependant, elle divise par # (n-1) plutôt que par n, nous allons donc corriger la variance obtenue. variance_originale <- var(rowSums(matrice_donnees)) nbre_individu1 <- nrow(matrice_donnees) # En utilisant la matrice complète nbre_individu2 <- length(resultats_etudiants) # En utilisant les totaux des étudiants variance_originale variance_corrigee <- variance_originale * (nbre_individu1/(nbre_individu1 - 1)) variance_corrigee # Pour calculer l'écart-type, il suffit d'extraire la racine carrée de la variance # La fonction sqrt() permet d'extraire la racine carree. Nous aurions pu utiliser # la fonction pour l'exponentielle de ½ (^0.5) qui permet de mettre en exposant # n'importe quelle valeur. ecart_type1 <- sqrt(variance_corrigee) ecart_type2 <- variance_corrigee^0.5 ecart_type1 # Valeur avec sqrt() ecart_type2 # Valeur avec ^0.5 # POINT 04 # La fonction round() permet d'arrondir les valeurs obtenues n <- 3 # nbre de chiffres après la virgule valeur_arrondie <- round(ecart_type1, n) valeur_arrondie # retourne la valeur arrondie. # POINT 05 # Calculons la moyenne à chacune des questions (pour connaitre les questions mieux # réussies. La fonction colSums() permet d'additionner les colonnes. La fonction # colMeans() permet de caculcer la moyenne de chaque colonne. moyenne_questions <- colMeans(matrice_donnees) moyenne_questions # POINT 06 # Répartition selon la courbe normale distribution <- 0 for (i in 1:nbre_individu1) { distribution[i] <- (resultats_etudiants[i] - moyenne_etudiants1)/ecart_type1 } distribution # POINT conclusion # Voilà qui complète cette introduction. Le fichier de script complet est disponible à # l'adresse http://pages.usherbrooke.ca/asaubin/r_project/data/intro_01a.r