Bonsoir à toutes est à tous,

Je programme en SAS tous les jours et je souhaite me mettre un peu à R. La philosophie n'a pas l'air d'être la même...
J'ai suivi quelques cours trouvés sur internet et je voudrais maintenant faire mes propres trucs, notamment du reporting de résultat avec ReporteRs, mais ça je verrais plus tard.

Là je bloque dès le début ! Je voudrais créer créer quelques variables toutes simples. Vu que j'ai vu que le package dplyr servait à faire pas mal de gestion de données je me suis dis pourquoi ne pas utiliser la fonction mutate() qui apparemment permet de faire des choses intéressantes. Sur un dataset tout simple je veux affecter une valeur selon une condition :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
 
# Packages installation
install.packages("dplyr")
install.packages("tidyr")
 
# Loading packages
library(dplyr)
library(tidyr)
 
# Dataset - ChickWeight
View(ChickWeight)
 
 
# Class of weight and period
ChickWeight2 <- mutate(ChickWeight,
                       if (Time <= 10) {
                         Period == "Period 1"
                       } else if (Time > 10) {
                         Period == "Period 2"
                       }
                      )
Et je récupère directement ça comme message :

Warning message:
In if (Time <= 10) { :
the condition has length > 1 and only the first element will be used


J'ai cherché un peu sur internet mais je ne trouve pas de solution. Apparemment sur certaines choses ils proposent ifelse mais ça n'a pas l'air de fonctionner non plus.

Pourriez-vous m'aider avec ce petit problème ? Après ça je m'attèlerai à toutes les étapes de dérivations et programmations à coups de merges, transpose, retain...

Merci beaucoup !

alers