- Le blog participatif de bioinformatique francophone depuis 2012 -

Cours de R pour débutant pressé (introduction)

Bon­jour à tous !

Aujourd’hui, je vous pro­pose un pre­mier petit cours/​tutoriel de niveau « débu­tant », d’une série d’au moins 3, pour apprendre à faire quelques gra­phiques avec R et vous la péter devant vos col­lègues encore à gra­pher sous Excel.

Ce tuto­riel s’adresse aux gens qui n’ont jamais codé, qui ne connaissent pas grand-chose à la pro­gram­ma­tion et qui sont avides de savoir/​pouvoir (les deux choses étant liées). Donc si vous êtes non-bio­in­for­ma­ti­cien sym­pa­thi­sant, ou que vous pas­sez là par pur hasard, ce tuto est pour vous ! De plus, j’ai dans l’idée de m’efforcer à faire des cours conden­sés, qui ne vous occu­pe­ront pas plus de 10 minutes, pour meu­bler vos pauses clopes (c’est meilleur pour la san­té !).

La pre­mière ques­tion que j’entends quand je parle de R est « Mais R, c’est quoi ? ». R est un lan­gage de pro­gram­ma­tion et un envi­ron­ne­ment mathé­ma­tique, qui per­met, de façon très pous­sée, de faire du trai­te­ment de don­nées, de l’analyse sta­tis­tique, ou encore comme nous allons le voir aujourd’hui, des gra­phiques !

Pour­quoi ne par­ler que des gra­phiques aujourd’hui ? Parce que trop de gens en bio­lo­gie font encore des gra­phiques avec Excel (et consorts), perdent du temps, font des choses inap­pro­priées, ou ne contrôlent pas leurs gra­phiques de bout en bout. De plus, les jour­naux scien­ti­fiques ont des exi­gences qui ne cadrent pas tou­jours avec les gra­phiques auto­ma­tiques. Ce que per­met R, et c’est sa plus grande force face à Excel, c’est un contrôle total de ce que vous allez affi­cher. Et si tout le monde fait des gra­phiques, tout le monde ne fait pas de sta­tis­tiques (même si tout le monde devrait).

Allez, on se lance !

Pour ins­tal­ler R, rien de plus simple ! On se rend sur le site du CRAN, on télé­charge la ver­sion adap­tée à son sys­tème d’exploitation et on ins­talle R comme n’importe quel logi­ciel. Il est à noter qu’une ver­sion est sou­vent pré­sente sur les sys­tèmes Unix-GNU/­Li­nux, sans avoir à ins­tal­ler quoi que ce soit. Cepen­dant, ces ver­sions sont sou­vent un peu datées et il est pré­fé­rable d’installer les der­nières ver­sions stables, quand on sou­haite uti­li­ser des packages (nous revien­drons là des­sus).

A l’heure de la rédac­tion de ces lignes, la der­nière ver­sion est la 2.15.1, donc il sera pos­sible dans le futur que ce que je vous écris là soit dépas­sé et que les ordi­na­teurs aient pris le contrôle de votre cer­veau. Dans ce cas, pas la peine de conti­nuer.

Si vous avez tou­jours vos neu­rones, vous tom­be­rez après ins­tal­la­tion sur la fenêtre sui­vante :

Je suis ici sous Mac OSX et j’ai sim­ple­ment édi­té mes cou­leurs de la façon sui­vante (pour que les gens qui passent devant mon écran sachent que je tra­vaille direc­te­ment dans la matrice) :

Nous avons donc tout un tas de bla­bla, puis un che­vron « > », qui nous indique que R attend notre pro­chaine com­mande. Nous allons com­men­cer par les bases et taper « 2+3 » puis entrée. A cet ins­tant, magie noire se fai­sant, R cal­cule et vous donne le résul­tat, après le [1] (le numé­ro du résul­tat).

Très bien, vous venez d’entrer votre pre­mière com­mande. Féli­ci­ta­tions !

Main­te­nant, entrons notre pre­mière valeur en mémoire :

Nous avons ici notre che­vron mon­trant que R nous attend, puis « a », le nom de notre variable, puis la flèche vers la gauche <-

Un peu de détail :

Une variable, contrai­re­ment à une constante, est : Variable ! Bra­vo ! C’est-à-dire que l’on peut lui assi­gner une valeur, qui peut chan­ger au cours du temps. Cette variable est sto­ckée dans la mémoire de l’ordinateur et peut être rap­pe­lée quand bon vous semble.

« <- » peut être rem­pla­cé par « = », c’est la même chose. La flèche ayant l’avantage dans des cas avan­cés de pou­voir aller dans l’autre sens (->), alors que le « = » sera tou­jours pour assi­gner une valeur sur la droite à une variable posi­tion­née sur la gauche.

La valeur est ce que l’on veut gar­der, le résul­tat d’un cal­cul, un mot, une his­toire, une aven­ture…

Main­te­nant, si vous tapez « a » :

R vous retourne la valeur de votre variable !

Main­te­nant, créons un vec­teur (une suite de valeurs), grâce à « c( ) ».

Nous venons d’assigner à notre variable « a » les 5 valeurs 1, 2, 3, 4 et 5, dans un vec­teur. Nous pou­vons main­te­nant faire des choses avec ce vec­teur, comme lui addi­tion­ner 1 :

R addi­tionne 1 à chaque élé­ment de « a » et nous retourne le résul­tat.

Main­te­nant, que se passe-t-il si on fait un plot, un gra­phique de ce vec­teur ?

R nous des­sine un gra­phique, avec en ordon­née les valeurs de notre vec­teur (1, 2, 3, 4 et 5) et en abs­cisse leur posi­tion dans l’index de « a ». Vous allez me dire "Hey, mais tout à l'heure, on a fait a+1, alors on devrait démar­rer notre vec­teur à 2 !", ce à quoi je vous répon­drai : "Oui, banane, mais on ne l'a pas mis en mémoire, si ?" et tout penaud vous bais­se­rez la tête et répon­drez "Ah non, c'est vrai…". En effet, il aurait fal­lu assi­gner cette addi­tion en mémoire si on vou­lait la conser­ver. Mais on ver­ra ça la semaine pro­chaine.

Reve­nons à la posi­tion dans l'index. Qu’est-ce que cette posi­tion ? Et bien dans un vec­teur, chaque élé­ment est indexé, c’est-à-dire que l’on peut y accé­der direc­te­ment en connais­sant son numé­ro d’index. Il est à noter que contrai­re­ment à beau­coup de lan­gages de pro­gram­ma­tion, R compte à par­tir de 1 et pas de 0 (comme nous quoi…). Par exemple, dans « a », le 3 a pour index 3. Pour y accé­der, on tape :

C’est plus convain­cant si on modi­fie a :

Le nou­veau 3ème élé­ment de « a » est bien 7 (ce que vous pou­vez véri­fier en re-plot­tant a).

Si vous vou­lez en savoir plus sur la fonc­tion plot, comme toutes les fonc­tions R, elle a une page d’aide, à laquelle vous accé­dez en tapant le nom de la fonc­tion pré­cé­dé par un « ? » :

Vous devriez voir appa­raître la page d’aide de la fonc­tion recher­chée, en l’occurrence « plot », du package {gra­phics} qui est un package de base de R.

Voi­ci déjà une intro­duc­tion sur R, vous per­met­tant de com­men­cer à vous amu­ser. Dans la pro­chaine édi­tion, nous ver­rons com­ment faire des gra­phiques avec des cou­leurs, des points fun­ky, le tout avec des exemples appli­qués à la bio­lo­gie et tou­jours en vous per­met­tant de faire le cours en 10 minutes top chro­no !

Allez, c'est mon cadeau du jour, le top de "J'me la tonze sévère" ; tapez dans R le code sui­vant (que vous connais­sez si vous êtes un fan du blog) :

Toutes les images de cet article sont sous licence CC BY-SA 3.0.
Je tiens à remer­cier Syl­vain P., Nico M. et nahoy pour leurs com­men­taires.



Pour continuer la lecture :


Commentaires

5 réponses à “Cours de R pour débutant pressé (introduction)”

  1. Avatar de Le Mer Jean
    Le Mer Jean

    Mer­ci beau­coup pour ce cours. J'attends avec impa­tience la suite.

    1. Yoann M.

      Bon­jour Jean,

      La suite est en relec­ture actuel­le­ment. Elle sera donc bien­tôt dis­po­nible.
      Mer­ci pour votre com­men­taire 🙂

  2. Mer­ci pour cet cours, super sym­pa et mer­ci du par­tage. J'attends la sai­son 2.

  3. Avatar de TOULASSI

    Un grand mer­ci pour ce tuto­riel. On espère avoir la suite bien­tôt.

  4. Cool le cours, mer­ci. J'aime beau­coup le 'plot' que ça rends 🙂

Laisser un commentaire