User Tools

Site Tools


r:coursdavid

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

r:coursdavid [2016/09/28 16:41] (current)
Line 1: Line 1:
 +====== R introduction ======
 +08/05/2009
  
 +Introduction à [[http://www.r-project.org/|R]] par David Delplace.
 +
 +R = CLI uniquement
 +
 +David utilise un éditeur de texte http://www.sciviews.org/Tinn-R/|Tinn-R]]
 +
 +Sous [[:Windows]], c'est mieux de travailler en XP qu'en Vista.
 +
 +Il y a des bibliothèques de fonctions (libraries) prédéfinies qu'il faut d'abord importer (packages > load package... ou package > install package...) et ensuite charger celle qu'on va utiliser (dans l'exemple, c'est la bibliothèque "foreign"):
 +
 +<code>library(foreign)</code>
 +
 +===== Documentation en ligne =====
 +  * [[http://cran.r-project.org/doc/contrib/Paradis-rdebuts_fr.pdf|R pour les débutants]]
 +  * ||http://www.ats.ucla.edu/stat/r/|Resources to help you learn and use R]] at UCLA
 +  * voir aussi [[http://doc.ubuntu-fr.org/r#manuels|ici]]
 +
 +===== Introduction =====
 +Pour lire les données:
 +
 +<code> dataXY = read.table("C:\path\data.txt", header=T)</code>
 +
 +va lire les données dans data.txt, et il y a un header. 
 +
 +Pour voir les informations sur un objet (ex: dataXY):
 +
 +<code>str(dataxy)</code>
 +
 +Les variables sont identifiées par un $ qui précède.
 +
 +Pour voir les lignes de données, taper le nom de l'objet:
 +
 +<code>dataxls</code>
 +
 +Pour transformer la première variable (varindep) en numérique:
 +<code>dataxls$varindep = as.numeric(dataxls$varindep)</code>
 +
 +Pour faire un recodage, il faut créer une fonction avec les tests pour recoder.
 +
 +test: voir si régression linéaire
 +
 +<code>result = glm (dataxls$varindep ~ dataxls$varexp1 + dataxls$varexp2)</code>
 +
 +Pour avoir les infos:
 +
 +liste des objects:
 +<code>ls()</code>
 +
 +info sur un objet:
 +<code>summary(dataxls)</code>
 +(chais plus)
 +
 +Pour rajouter 5 dans la variable y dans chaque ligne:
 +<code>for (y in 1:ncol(dataxls)) {
 +dataxls [,y] = dataxls [,y] + 5
 +}</code>
 +
 +graphiques:
 +<code>boxplot(dataxls)</code>
 +
 +Pour une seule variable:
 +<code>boxplot(dataxls[1])</code>
 +(= la première, R n'est pas zero-based, mais bien 1-based)
 +ou
 +<code>boxplot(dataxls$varindep)</code>
 +
 +Pour plusieurs variables:
 +<code>boxplot(dataxls[c(1:3,7)]</code>
 +
 +Aide sur la commande boxplot:
 +
 +<code>? boxplot</code>
 +
 +Commentaires = # (comme en [[:bash]]).
 +
 +cbind() = merge de colonnes (on peut définir la clef externe)
 +
 +rbind() = merge des rows: ajouter des nouvelles données avec les mêmes variables
 +
 +N.B: dans un test, l'égalité c'est ==
 +
 +<code> if (Test == -1) {
 +    HasAllImages = 0
 +    print(paste("the file ", varA, " doesn't existe.'))
 +}</code>
 +
 +===== Importer un fichier texte =====
 +
 +<code>read.fwf ("D:/R/lbw.dat",)</code>
 +Ben non
 +
 +===== Importer un fichier dbf =====
 +<code>library(shapefiles)
 +essai = read.dbf("D:/r/lbw.dbf")</code>
 +
 +Pour le voir:
 +<code>essai</code>
 +
 +Liste des variables:
 +<code>str(essai)</code>
 +
 +===== Importer des données stata =====
 +(dans la bibliothèque "foreign")
 +
 +<code>essai3 <- read.dta("D:/R/exmat3.dta")</code>
 +
 +===== Sauver et charger des données =====
 +Pour sauver un objet (pour une utilisation ultérieur ou sur une autre machine):
 +<code>write.table(essai,"D:/R/toto")</code>
 +
 +Pour le relire:
 +<code>read.table("D:/R/toto")</code>
 +
 +Pour le mettre en mémoire dans l'objet essai2:
 +<code>essai2 = read.table("D:/R/toto")</code>
 +
 +===== vecteur & matrice =====
 +Combiner 2 vecteurs et en faire une matrice:
 +<code>a = 1:10
 +b = 11:20
 +ab = rbind(a,b)
 +str(a)
 +str(ab)
 +
 +ab = as.matrix(ab)
 +
 +ab</code>
 +
 +Dernière ligne = afficher la matrice.
r/coursdavid.txt · Last modified: 2016/09/28 16:41 (external edit)