NEW: "Ecological and socioeconomic factors associated with globally reported tick-borne viruses", led by @samsambado.bsky.social, in which she applied BRT modelling to a global database of TBVs to pick apart the complicated pathway from transmission to reported cases!
www.nature.com/articles/s43...
Posts by Francis Windram
Haha apologies for that confusion :) Getting this version out had quite a bit of nasty work behind the scenes to get it up to scratch for CRAN. Hope you enjoy the new models!
Finally managed to get a new version of rTPC (v1.1.0) onto CRAN, with @franwin.co.uk driving most of the changes. There are now 49 models included.
cran.r-project.org/web/packages...
And parallel fitting of TPCs can be done using mirai and purrr.
padpadpadpad.github.io/rTPC/article...
🧪 #rstats
We're at the Vector-Borne Diseases conference today here in Liverpool. Let us know if you are too! #VBD26
Also if we were going to get people to take anything from package dev into their normal analysis, it should be 1) Dependency checking using rlang::check_installed() and then using ::-style calling, 2) Proper messaging using cli, & 3) properly documenting functions with Roxygen.
That's kind of a wild suggestion for researchers (and one that I haven't personally encountered). I'm all for spinning off reusable functions into their own package, but the way one uses R for analysis is just so very different to how one writes a package. Just code/data/results works in most cases!
We are exhibiting at AMCA 26!
Will you be at AMCA 26? Come find @vectorbyte.bsky.social and chat to us about our databases, workshops, data management, and let @samrund.bsky.social give you stickers, perhaps?
#AMCA26
ohvbd 1.0.0 has now been released on CRAN!
This package should help those looking for VBD data by interfacing with vbdhub.org for searching, and the VectorByte trait and population dynamics databases for data download (alongside much more).
vbdhub.org/blog/ohvbd-c...
#rstats #vectorbyte #vbd
It's so good!!! I initially was a bit sceptical about recode_values until I was shown the whole lookup table approach, and now I am super excited. Recoding is one of the least enjoyable things that I actually do regularly.
Google with AI buttons
Google without AI buttons
I made a filterlist for uBlock Origin to remove Generative AI features on websites. Includes blocks for
* Google AI Summaries
* YouTube Ask button & chat summaries
* GitHub Copilot
* Facebook AI chat
* X's Grok buttons
* Deviantart DreamUp
* Booru AI images
* And more
github.com/Stevoisiak/S...
It is a tool, and it is one that is not right for every purpose. I personally believe coding is a situation where it can significantly enhance the already highly-skilled. I also believe that one does themselves a disservice by relying too heavily upon it. It can _code_, but it can't _think_ for you.
You do not have to think it is terrible at everything to think it is less useful than others find it. You do not even have to believe it is good at everything to believe it is good at some things. It is certainly good at natural language processing for example.
My own take at least is the following:
- When it works it's great.
- When it doesn't work it's not.
- Knowing when it doesn't work can be hard.
- It is hard to realise when it hasn't worked without out-of-band knowledge.
- It is hard to develop said knowledge without other skills.
Oh I shall, thanks!
I did actually play with that (parquet is such a cool data format). Alas as this is not _primarily_ a spatial package I figured it was probably best not to add an extra dep for that sweet sweet extra 300ms reduction.
You did get a shoutout in the changelog though! ohvbd.vbdhub.org/news/index.h...
Out of interest I actually ended up switching up a little more and settling on GeoPackage for this particular usecase. It further reduced load time by 33% for the largest files.
Oh that's a fantastic idea! Honestly shapefiles have always annoyed me, but I don't do enough with them to have done a deep dive into alternative formats. Already implemented and this saved me 25% storage size and ~35% load time for the largest files!
Thank you so much!
I definitely agree, devs should strive to inform the user when caches are created (and, better yet, used).
In the end it is a little tricky if your code is only ever run once, because after that you have no ability to affect the user's system in any meaningful manner. But still...let them know!
That is super interesting and very much along the lines of what I was thinking for a unified cache tracking mechanism should that be needed. Thanks!
Yeah that's a really good point, though I also have support for custom cache locations specifically for those cases. Still I'm inclined to agree. I hope the CRAN folks view it the same way!
Ahh yes memoisation would be great within sessions, these are more like large lookup shapefiles and data tables that get used across sessions. I'm inclined to agree that I should just rely on the user to handle it.
Thanks for the link!
I could (and possibly will) make it so that any function that interacts with the outside world automatically cleans the cache, but I don't _really_ love that either as then a function that interfaces with one DB might clean the cache relating to another.
I struggle with this because on one side I don't like doing things under a user's nose, but on the other I really don't like the idea of just eating up space on a user's drive until they interact with the cache-maintenance helpers (which they may not find).
An #rstats question for package developers: If my package maintains a cache to minimise data downloads, is it sensible/preferred to put an automatic cache cleaner (delete anything older than x days) in .onLoad, or to just mostly leave cache maintenance to the user (with appropriate helpers)?
{ggview} can print plots to Viewer (Rstudio or Positron) with true scaling. Adjust plot settings and see the final proportions immediately.
Save the plot once 👌
e.g.:
ggplot(...) +
ggview::canvas(width = 220, height = 220*2/3, units = "mm", dpi = 300)
per @nrennie.bsky.social #datavis #rstats
@franwin.co.uk drove a massive rework of rTPC this year, making package maintenance much easier. rTPC now supports 49 different model formulations, vignettes are updated, & you can parallelise model fitting using new purrr & mirai, which is DOPE. #rstats 🧪
padpadpadpad.github.io/rTPC/article...
🚨 New paper 🚨
How does livestock grazing impact tick-borne disease hazard? Our new study in the New Forest National Park used a paired experiment to find out.
Important for #rewilding and #conservation grazing schemes!
#Ticks #LymeDisease @ukhsa.bsky.social
www.sciencedirect.com/science/arti...
Honestly, for me I'm still being pushed away from Positron by the lack of inline output for qmd/Rmd. Being able to play around then build and send is pretty important for me.
Ah, esquisse was the package!