Un raster est un fichier géographique dont les données sont stockées sous forme d’une grille régulière. Il existe plusieurs format de stockage : GeoTiff, netcdf, asc, …  Dans R, il existe 3 packages principaux qui peuvent vous permettre de lire un fichier raster : l’historique : {raster} la version remastérisée avec du C++ : {terra} un package récent avec une philosophie différente : {stars} Lecture d’un fichier raster avec une seule couche # récupération du chemin d’un Geotifftif <- system.file(« tif/L7_ETMs.tif », package = « stars ») # lecture avec {raster}r_raster <- raster(tif)# lecture avec {terra}r_terra <- rast(tif)# lecture avec {stars}r_stars <- read_stars(tif) Lecture d’un fichier raster avec plusieursRead More →

Plusieurs façon de faire, à vous de choisir celle qui vous plait le plus 🙂 Fabriquons un petit jeu de données auquel nous souhaitons ajouter une colonne contenant le nombre ne NA sur chacune des lignes. library(tidyverse) dataset <- tribble(~a,~b,~c, 1,NA,NA, NA,NA,NA, 1,2,3, NA,3,NA ) A l'ancienne dataset$nb <- apply(dataset, MARGIN = 1, function(x){sum(is.na(x))}) avec du pmap et du mutate dataset %&gt;% mutate(nb = pmap(.,function(a,b,c){sum(is.na(a),is.na(b),is.na(c))}), nb= unlist(nb)) Mais c’est dommage de devoir spécifier a, b et c. donc simplifions : dataset %&gt;% mutate(nb = pmap_dbl(., function(…){sum(is.na(c(…)))})) Cela reste à mon goût un peu trop verbeux Avec rowSums dataset %&gt;% mutate(nb = rowSums(is.na(.))) ça c’est propreRead More →

Vous savez comment filtrer un jeu de données avec dplyr ? : filter(), on peut donc utiliser une règle pour filtrer sur les valeurs manquantes (les fameux NA) en utilisant la fonction is.na. library(dplyr) df <- tibble(x1 = c(1, 2, NA, 4), x2 = c(« a », NA, « b », « c »), y = c(NA, TRUE, FALSE, TRUE)) df %>% filter(!is.na(x1)) Mais si vous voulez supprimer les lignes qui contiennent des NA dans plusieurs colonnes, voire toutes les colonnes, il vaut mieux utiliser drop_na du package {tidyr}. Vous pourrez même utiliser les "helpers" comme pour la fonction select de {dplyr} pour choisir les colonnes avec des règles. library(tidyr) dfRead More →

Comme on est dans le {tidyverse}, on va utiliser les bons termes : Nous allons utiliser le pipe pour rendre le code plus clair ( Le pipe, qu’est-ce que c’est ? ) On ne travaille plus avec des dataframes, mais avec des tibble: (tibble ou data.frame ?) Et donc on ne supprime pas de ligne, mais on filtre les données en fonction d’une condition. En effet, si vous souhaitez retirer des lignes de données, vous avez sûrement une bonne raison. Cette bonne raison se trouve dans les données elles-mêmes. Vous utilisez donc cette information pour filtrer les données. library(dplyr) iris %>% filter(Species != « setosa ») PourRead More →

Une anova avec modèle mixte comme VARCOMP dans SAS Créons d’abord un jeu de données. On souhaite déterminer la précision et la répétabilité d’une analyse. Pour cela, la mesure est effectuée par 2 techniciens différents, sur des concentrations de produits différents sur 3 jours différents et avec 2 réplicats. library(dplyr) set.seed(42) data <- tibble( concentration = rep(c(10, 30, 50, 80), 3*2), technicien = rep(c(« A », « B »), each = 3*2*2), jour = rep(rep(1:3, each = 2*2), 2), replicat = rep(1:2, times = 2*3*2)) %>% mutate(mesure = ifelse( technicien == « A », 0.2 * concentration + rnorm(12, sd = 3), 0.2 * concentration + rnorm(12, sd = 2))) dataRead More →

Une opération courante quand on travaille avec des variables qualitatives (de type factor ou character) est de modifier les valeurs des modalités de cette variable. Ceci permet de les rendre plus courtes, plus explicites, ou même de les regrouper si on leur attribue le même nom. La fonction fct_recode, de l’extension forcats (qui fait partie du tidyverse) facilite ce type d’opérations. Celle-ci prend en premier argument un vecteur, puis une série de recodages sous la forme Nouvelle valeur = Ancienne valeur. Exemple : library(forcats) f <- c(« Fraise », « Framboise », « Pomme », « Fraise ») f <- fct_recode(f, « Ananas » = « Fraise », « Poire » = « Pomme ») f [1] Ananas Framboise Poire AnanasRead More →

Une opération courante quand on travaille avec des variables qualitatives (de type factor ou character) est de modifier les valeurs des modalités de cette variable. Ceci permet de les rendre plus courtes, plus explicites, ou même de les regrouper si on leur attribue le même nom. La fonction fct_recode, de l’extension forcats (qui fait partie du tidyverse) facilite ce type d’opérations. Celle-ci prend en premier argument un vecteur, puis une série de recodages sous la forme Nouvelle valeur = Ancienne valeur. Exemple : library(forcats) f &lt;- c(&quot;Fraise&quot;, &quot;Framboise&quot;, &quot;Pomme&quot;, &quot;Fraise&quot;) f &lt;- fct_recode(f, &quot;Ananas&quot; = &quot;Fraise&quot;, &quot;Poire&quot; = &quot;Pomme&quot;) f [1] Ananas Framboise Poire AnanasRead More →

Pour proposer un article sur ce site Internet, nous passons par notre compte Github ThinkR-open/abcdR. Vous devrez faire un fork de notre dépôt github, ajouter un article au format markdown dans le dossier _post et proposer une pull request. Les articles au format markdown (.md) devront avoir Le fichier doit avoir l’extension .md (il sera renommé automatiquement au moment du push) L’en-tête YAML suivante: — post_title: Titre de votre article author: votre_nom_d_auteur layout: post published: true categories: – graphique – tidyverse — Le contenu de votre article vient ici. le code R doit etre mis en forme comme cela : (…) le code R doitRead More →