Comment debugger votre package dans un conteneur fedora {rhub} avant d'envoyer sur le CRAN ?

Ce n’est pas la première fois que je présente comment déboguer sur une autre plateforme avant d’envoyer votre paquet au CRAN. Cette fois, avant son envoi, {checkhelper} a échoué sur l’image ‘fedora’ fournie par {rhub}. Comment déboguer votre package en utilisant cette plateforme lorsque vous …

Lire la suite

Partager votre travail sur R en suivant les bonnes pratiques depuis un simple notebook

Vous écrivez des scripts R et vous souhaitez les partager avec d’autres utilisateurs, de manière durable et maintenable. Vous écrivez déjà votre code dans un notebook (Rmarkdown ou Quarto) et partagez sa sortie en HTML. Vous souhaitez documenter les chunks, et rendre cette documentation visible dans …

Lire la suite

Ajouter une couche géographique de points dans {tmap} avec plusieurs formats de bordures

Ça fait un moment depuis mon dernier article de blog. En ce moment mon temps libre est utilisé pour améliorer des packages comme “{fusen} : Gonflez votre package à partir d’un simple Rmd plat” , “{attachment} : Tools to deal with dependencies in scripts, Rmd and packages” ou “{gitlabr} : An R client …

Lire la suite

Je n'ai pas le temps (de pratiquer)

J’aimerais vraiment pouvoir le faire, et je sais que j’en profiterai, mais je n’ai pas le temps ou je n’ai pas trouvé le temps de l’essayer…. […] Combien de temps comptez-vous prendre pour lire cet article de blog ? Allez-vous lire jusqu’à la fin ? Entièrement ou seulement les titres ? …

Lire la suite

Déboguer son package qui a échoué sur CRAN grâce à {rhub}

Si vous avez envoyé des paquets sur CRAN, vous avez peut-être rencontré des échecs sur différentes configurations de systèmes d’exploitation dont vous n’aviez jamais entendu parler auparavant : Solaris, debian clang, fedora gcc, … Le package {rhub} permet de tester votre paquet sur certains d’entre …

Lire la suite

Comment déboguer son package sur Win-Builder avant d'envoyer vers le CRAN ?

Soumettre un package au CRAN peut être difficile car il est vérifié sur plusieurs systèmes d’exploitation et versions de R que vous n’êtes peut-être pas en mesure de vérifier vous-même localement. Heureusement, certains services comme {rhub} et Win-Builder évitent certaines erreurs CRAN …

Lire la suite

#30DayMapChallenge: 30 jours de création de cartes (3) - La Terre est une sphère

Le défi #30DayMapChallenge a été lancé par Topi Tjukanov sur Twitter. Il est ouvert à tous ceux qui souhaitent afficher une carte, quel que soit le logiciel. Dans ce billet de blog, je vais montrer des cartes réalisées avec R. Je m’ajoute des contraintes pour le plaisir. Cette semaine, je vais créer …

Lire la suite

#30DayMapChallenge: 30 jours de création de cartes (2) - tmap

Le défi #30DayMapChallenge a été lancé par Topi Tjukanov sur Twitter. Il est ouvert à tous ceux qui souhaitent afficher une carte, quel que soit le logiciel. Dans ce billet de blog, je vais montrer des cartes réalisées avec R. Je m’ajoute des contraintes pour le plaisir. Cette semaine, j’utiliserai …

Lire la suite

#30DayMapChallenge: 30 jours de création de cartes (1) - ggplot2

Le défi #30DayMapChallenge a été lancé par Topi Tjukanov sur Twitter. Il est ouvert à tous ceux qui souhaitent créer une carte, quelque soit le logiciel. Dans ce post de blog, je vais montrer des cartes réalisée avec R. Je m’ajoute aussi des contraintes à moi-même pour le plaisir. Cette semaine, …

Lire la suite

Suivre une trajectoire de particule sur un raster avec {rayshader}

{rayshader} est un package fantastique pour la cartographie 3D, mais il vient avec les limitations de {rgl}. J’ai toujours trouvé dommage de ne pas pouvoir me balader dans toutes les directions sur mes objets 3D. Dans ce billet de blog, je vais vous montrer une astuce pour simuler la trajectoire des …

Lire la suite

Créer un robot twitter sur un Raspberry Pi 3 avec R

Avec Marion Louveaux, nous avons décidé que nous devions construire un robot Twitter pour notre hashtag préféré. Nous avons exploré différentes possibilités mais la vérité est que je n’ai pas pu résister à l’envie de le construire en utilisant R et {rtweet}. Voici les étapes que j’ai utilisées pour …

Lire la suite

Garder à jour un fork de github/gitlab

Les développeurs de la communauté R sont ouverts à tout type de soutien dans le développement de leurs packages. Vous pouvez ouvrir des issues mais aussi proposer des pull/merge requests pour améliorer le code et/ou la documentation. Mais une fois que vous avez fork le dépôt principal, comment être …

Lire la suite

Utiliser des objets mesh3d avec rayshader et rayrender

Les gens aiment montrer des images 3D dans leurs présentations parce qu’elles font généralement un petit effet “wahou”. Enfin, est-ce vraiment le cas ? A vrai dire, peu m’importe ! Je cherche juste une opportunité de jouer avec des images 3D… Cet article de blog est une version détaillée de quelques …

Lire la suite

Enquête Kaggle 2018: Cartes des langages de programmation et répartition des problèmes de reproductibilité

L’an dernier, j’ai participé à un défi d’analyse des données de l’enquête Kaggle. L’objectif du défi : raconter une histoire sur les données d’un sous-ensemble de la communauté de la science des données représentée dans cette enquête, par une combinaison de texte narratif et d’exploration de …

Lire la suite

Jouer avec des outils de cartographie sur des images 3D de cellules

Jouons avec les outils de cartographie sur des données non géographiques ! {rayshader} est cool sur les raster, mais pourquoi ne pas l’utiliser sur des cellules végétales segmentées ? […] Je voulais trouver une bonne raison de jouer avec les packages de Tyler Morgan-Wall pour la visualisation …

Lire la suite

Initiation à la cartographie avec {sf} & Co.

Aux “Rencontres R 2018” à Rennes, j’ai proposé une brève introduction à la cartographie en utilisant le récent package {sf} et quelques autres packages intéressant. Ce post de blog est une version enrichie de ma présentation et me permet de partager le code des différentes cartes qui y figurent. …

Lire la suite

Interpolation spatiale sur le globe terrestre 3D

La carte de la Terre est habituellement présentée à plat. Les coordonnées géographiques vont généralement de -180° à +180°. Les interpolations spatiales qui utilisent directement les coordonnées géographiques peuvent être compliquées car -180° est égal à +180°. Je propose ici une façon de réaliser …

Lire la suite

Migration de wordpress à Hugo avec Blogdown

J’ai utilisé le thème hugo-icarus de digitalcraftsman comme base et déplacé différentes choses. J’ai ajouté de quoi avoir un blog et ma présentation de freelance. N’hésitez pas à le “fork” ou à proposer vos “pull requests”. Le thème “hugo-statnmap-theme” a les fonctionnalités suivantes : […] …

Lire la suite

SDMSelect: Sélection de modèle par validation croisée et cartographie des distributions d'espèces

Cette librairie a été initialement conçue pour la sélection de covariables en vue d’ajuster des modèles d’habitat (biomasses, densités ou présence/absence). Son objectif premier est donc de produire des cartes de prédiction de distributions (cf. vignette SDM_Selection). Cependant, le coeur de la …

Lire la suite

Un halo teinté à l’intérieur d’un polygone avec leaflet et la librairie sf (simple feature)

Récupérons les polygones des régions françaises et attribuons une couleur à chacune. J’aime bien les couleurs piratepal de la librairie yarrr. […] Pour créer ces fameux doughnuts à partir des polygones d’origine et des polygones tampons, j’ai utilisé la fonction st_difference. Cependant, …

Lire la suite

Comment remplir un polygone avec des trous par une zone hachurée dans leaflet

J’ai créé un package R, disponible sur mon github statnmap, pour proposer la fonction hatched.SpatialPolygons. Cette fonction a été créée à partir de la fonction de base pour dessiner les SpatialPolygons de la librairie sp. J’ai retiré de la fonction tout ce qui permettait de dessiner directement. …

Lire la suite

Rmarkdown avec conditions pour créer des pdf et html en différentes langues et avec des images

Dans les fichiers de sorties ci-dessus, je liste différentes astuces que je dois utiliser pour rendre ces différentes versions possibles ainsi que quelques bonus: […] Je modifirai la liste si je fais face à de nouvelles difficultés ou si je trouve de meilleures manières de faire les choses. …

Lire la suite

Inclure plusieurs couches dans un widget leaflet avec R

La librarie leaflet s’intègre très bien avec l’écriture façon “pipe” (%>%). Il est donc très facile d’ajouter de multiple couches spatiales dans un widget leaflet. Pour ajouter de nombreuses couches spatiales à votre widget, il n’est pas nécessaire d’utiliser une fonction comme “addPolygons” pour …

Lire la suite

R-Shiny app pour la comparaison d’image par expertise

[Désolé, cet article n’est pas traduit en français] Pour résumer, la shiny app a été développée dans le cadre d’une publication scientifique ((Louveaux et al., 2016)[http://onlinelibrary.wiley.com/doi/10.1111/tpj.13290/full]) encore collaboration avec Marion Louveaux, une analyste d’images …

Lire la suite

Un bouton On/Off pour RShiny

Désolé cet article n’est pas traduit en français […] […] This Rshiny ‘SwitchButton’ function allows to use nice on/off (or True/False) switch buttons instead of the default Rshiny ‘checkboxInput’ function. This only uses CSS code and does not make use of javascript. The ‘switchButton’ …

Lire la suite

Analyse de sensibilité de la matrice de communauté inverse

Ce script est le matériel supplémentaire de deux publications sur l’analyse des réseaux trophiques. Il permet de tester les incertitudes sur les effets directs et indirects de petites variations de biomasses d’un compartiment de réseau trophique sur le reste de l’écosystème. […] Lassalle …

Lire la suite

Modèle de cycle de vie dans le cadre Bayésien : code OpenBUGS

Le code OpenBUGS présenté ci-dessous est le matériel supplémentaire d’une publication. Il s’agit de la modélisation du cycle de vie d’une espèce marine (la sole en Manche Est). Le modèle hiérarchique Bayésien intègre les indices d’abondances de juvéniles spatialisés, la dispersion larvaire, les …

Lire la suite