Problèmes techniques?
Problèmes généraux
- L’installation de
tidyverse
ne fonctionne pas. C’est le problème le plus important, vu qu’on utilise cette extension pendant le cours. Lisez attentivement le message d’erreur dans la console. Collez le message sur Google ou sur ChatGPT et expliquez-lui le problème. Si vous utilisez Windows, l’installation deRTools
peut être nécessaire. C’est nécessaire d’installertidyverse
pour compléter le cours. Donc, il faut régler le problème. Sinon, vous devrez utiliser la version en ligne de RStudio. - Je ne peux pas trouver les fichiers de données. C’est le deuxième problème le plus important. Voilà pourquoi vous devez téléchargez les fichiers à partir du dépôt Git, qui vous donnera déjà la structure correcte de dossiers et de données. Le reste dépend de votre propre organisation, d’où vous enregistrez les fichiers que vous créez, etc.
- Le code ne marche pas! Voici quelques origines de ce type de problème :
- lisez le message d’erreur attentivement et collez-le sur Google/ChatGPT s’il n’est pas clair;
- R n’est pas capable de trouver les objets ou les fichiers que votre code utilise. Dans ce cas-là, il faut s’assurer que vous avez créé l’objet pertinent avant de l’utiliser dans votre code;
- votre code n’est pas correct. Vérifier les lettres majuscule/minuscule, les parenthèses, les noms des variables, etc. Si vous utilisez un code de référence (p. ex., nos pages supplémentaires), comparez attentivement les codes; cherchez des fautes de frappe, etc.;
- Si vous êtes 100% certain que votre code est correct, vous pouvez essayer de redémarrer R (
Session > Restart R
); - vous pouvez certainement coller votre code sur ChatGPT pour trouver le problème. C’est la dernière option : vous devez essayer de trouver les problèmes vous même (c’est une compétence très importante). Il faut également garder à l’esprit que certains types de problèmes dépendent de votre structure de fichiers. Donc, ChatGPT ne sera pas capable de vous aider dans ce type de situation.
- Mes références ne sont pas affichées dans le document (Quarto). Vérifiez votre préambule et assurez-vous que votre fichier de références
bib
est correct, notamment sans guillemets, et que sa localisation est correcte aussi. Si vous utilisez le modèle dans notre dépôt Git, vous n’aurez pas ce type de problème. - Une erreur qui n’existait pas auparavant. Par exemple :
Error in select(...)
. Si on charge plus d’une extension qui contient des fonctions de noms identiques, on peut arriver à ce type de problème. C’est le cas ici :tidyverse
a une fonction appeléeselect()
(c’est une fonction de l’extensiondplyr
, chargée avectidyverse
). Quand on parle des modèles logistiques, on utilise souvent la fonctioninvlogit()
de l’extensionarm
. Cette extension contient aussi une fonctionselect()
(!), qui sera priorisée par R. C’est pourquoi vous avez ce type de problème. Pour régler le problème, il y a deux options : déchargezarm
en exécutantdetach("package:arm", unload = TRUE)
ou ajoutez le préfixedplyr::
à la fonctionselect()
:dplyr::select()
. Cela clarifie que vous voulez utilisez la fonctionselect()
de l’extensiondplyr
. - J’ai un problème pour importer un fichier
csv
. Si vous avez un fichiercsv
, il faut vérifier quel type de séparation de colonnes le fichier utilise. S’il utilise une virgule, on utilise la fonctionread_csv()
; s’il utilise un point-virgule,read_csv2()
. N’utilisez jamais Excel pour visualiser votre fichiercsv
avant de l’importer dans RStudio pour éviter des problèmes. - Mes tableaux ne marchent pas dans le document
PDF
produit avec Quarto. Bien que Quarto nous permette de créer plusieurs formats de fichiers, il faut dire que chaque format a ses propres particularités. Un documentHTML
, par exemple, est dynamique, tandis qu’un documentPDF
sera toujours statique. Il y a donc des extensions qui ne marcheront pas dans les deux. Des tableaux en sont un example : les tableaux utilisés dans un document QuartoHTML
peuvent ne pas fonctionner correctement si vous décider de créer un documentPDF
en changeant le format dans le préambule de votre document. Encore une fois, utilisez le modèle fourni tel quel et vous n’aurez pas de problèmes.
Raccourcis utiles
Voici une petite liste des raccourcis qui seront utilisés pendant le cours. Vous pouvez également profiter des snippets dans RStudio si vous voulez.
Fonction | Raccourci Mac | Raccourci Windows |
---|---|---|
Exécuter une ligne | Cmd + Entrée | Ctrl + Entrée |
Ajouter le pipe | Cmd + Shift + M | Ctrl + Shift + M |
Enregistrer le document | Cmd + S | Ctrl + S |
Exécuter tout le script | Cmd + Shift + Entrée | Ctrl + Shift + Entrée |
Nettoyer la console | ^ + L | Ctrl + L |
Compiler un doc Qmd |
Cmd + Shift + K | Ctrl + Shift + K |
Consultez la liste complète ici.
Aides-mémoire
Fonctions
Voici les principales fonctions utilisées dans le cours — ces fonctions viennent de l’extension tidyverse
.
Exploration
read_csv()
ouread_csv2()
: importer les fichierscsv
qui utilisent,
ou;
pour séparer les colonnes. La classe de l’objet en question seratibble
(un type spécifique de tableau en R)glimpse()
: visualiser toutes les colonnes d’un tableau en format de listemutate()
: ajouter ou modifier des colonnesselect()
: sélectionner ou enlever des colonnesarrange()
: ordonner les données en fonction d’une ou plusieurs variablesrename()
: renommer des colonnesfilter()
: filtrer les données (c’est-à-dire sélectionner des lignes)pivot_longer()
: transformer le tableau (wide-to-long transformation)summarize()
: créer des résumés à partir des donnéesgroup_by()
: grouper les données en fonction des variables.by()
: alternative àgroup_by()
. On utilise.by
comme un argument dans quelques fonctions (mutate()
,summarize()
, etc.)ntile(v, k)
: catégoriser une variable continuev
dansk
niveaux
Visualisation
ggplot()
: la première couche d’une figuregeom_boxplot()
: des boîtes à moustachesstat_summary()
: les moyennes + les barres d’erreurs standardgeom_point()
: un nuage des pointslabs()
: la couche des étiquettes dans une figuretheme_classic()
: un thème plus minimal pour vos figures (il y en a beaucoup qui commencent partheme_...()
)
Analyse
lm()
: une régression linéaireglm()
: une régression logistiqueemmeans()
: fonctions pour générer des comparaisons multiples pour une variablev
- P. ex.,
emmeans(fit, pairwise ~ v, adjust = "tukey")$contrasts
summary()
: le résumé d’un modèle1
Opérateurs relationnels
==
(deux=
) : indique si deux valeurs sont identiques!=
(! =
sans espace) : indique si deux valeurs sont différentes=
ou<-
(< -
sans espace) : attribue des valeurs à un objet|>
(| >
sans espace) ou%>%
: le pipe enchaîne des opérations%in%
: vérifie la présence des valeurs dans un objet. Par exemple,5 %in% c(1, 3, 5)
renvoieTRUE
!
: la négation d’une opération. Par exemple,!5 %in% c(1, 3, 5)
renvoieFALSE
, vu que ce n’est pas vrai que 5 n’est pas dans le vecteur&
: utilisé pour évaluer deux éléments (c’est-à-dire le « et » logique). L’opérateur est vrai si les deux opérandes de chaque côté sont vrai :5 > 3 & 3 > 4
renvoiFALSE
|
: utilisé pour évaluer deux éléments (c’est-à-dire le « ou » logique). L’opérateur est vrai si au moins un des opérandes de chaque côté sont vrai :5 > 3 | 3 > 4
renvoieTRUE
Bonus
if_else()
: une expression conditionnelleas_factor()
: transformer un vecteur (une colonne) en facteurfct
str_c()
: combiner des caractères (texte)clean_names()
: standardiser les noms des colonnes dans un tableau (il faut charger l’extensionjanitor
)
On peut utiliser la fonction
summary()
avec plusieurs types d’objet en R : c’est une fonction polymorphe.↩︎