Joe Kirincic's Avatar

Joe Kirincic

@jkirincic

Data Science & Data Engineering

184
Followers
741
Following
53
Posts
06.11.2024
Joined
Posts Following

Latest posts by Joe Kirincic @jkirincic

Beautiful.

10.03.2026 20:06 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Diagram comparing longitudinal vs encounter-level comorbidity detection using ICD-10 codes across five patient encounters.

Top panel (Longitudinal): The patient initially has uncomplicated diabetes (E11.9). Later an encounter includes E11.22 and K72.10, indicating complex diabetes and severe liver disease. Using longitudinal logic, these conditions persist in later encounters even when only E11.9 appears, preserving severity and correctly flagging severe liver disease.

Bottom panel (Encounter-level): Each encounter is evaluated independently. Diabetes changes from uncomplicated β†’ complex β†’ back to uncomplicated when E11.9 reappears, and severe liver disease is never flagged because its code does not repeat.

Message: Ignoring patient history can downgrade severity or fail to identify comorbidities.

Diagram comparing longitudinal vs encounter-level comorbidity detection using ICD-10 codes across five patient encounters. Top panel (Longitudinal): The patient initially has uncomplicated diabetes (E11.9). Later an encounter includes E11.22 and K72.10, indicating complex diabetes and severe liver disease. Using longitudinal logic, these conditions persist in later encounters even when only E11.9 appears, preserving severity and correctly flagging severe liver disease. Bottom panel (Encounter-level): Each encounter is evaluated independently. Diabetes changes from uncomplicated β†’ complex β†’ back to uncomplicated when E11.9 reappears, and severe liver disease is never flagged because its code does not repeat. Message: Ignoring patient history can downgrade severity or fail to identify comorbidities.

Graphic showing how the medicalcoder R package controls comorbidity detection using the flag.method argument.

Left side: A sample dataset of patient encounters with variables patid, encid, icd10code, and poa, containing ICD-10 codes such as E11.9, K72.10, and E11.22.

Below the dataset are two example R code blocks calling medicalcoder::comorbidities():

flag.method = "current" (default), producing encounter-level comorbidity flags.

flag.method = "cumulative", producing patient-level flags that preserve comorbidities across encounters.

Right side: the medicalcoder hex logo and labels explaining that
current = encounter-level and cumulative = longitudinal history preserving.

The graphic illustrates that longitudinal comorbidity tracking in medicalcoder is controlled by a single argument.

Graphic showing how the medicalcoder R package controls comorbidity detection using the flag.method argument. Left side: A sample dataset of patient encounters with variables patid, encid, icd10code, and poa, containing ICD-10 codes such as E11.9, K72.10, and E11.22. Below the dataset are two example R code blocks calling medicalcoder::comorbidities(): flag.method = "current" (default), producing encounter-level comorbidity flags. flag.method = "cumulative", producing patient-level flags that preserve comorbidities across encounters. Right side: the medicalcoder hex logo and labels explaining that current = encounter-level and cumulative = longitudinal history preserving. The graphic illustrates that longitudinal comorbidity tracking in medicalcoder is controlled by a single argument.

Same ICD codes. Same patient. Different risk profiles.

Encounter-level comorbidity logic assumes ICD codes are re-reported every visit. They usually aren’t.

medicalcoder handles this

πŸ“¦install.packages("medicalcoder")

#rstats #HealthInformatics #EHR #ClinicalResearch #RiskAdjustment #PublicHealth

09.03.2026 16:14 πŸ‘ 3 πŸ” 3 πŸ’¬ 0 πŸ“Œ 0

Such a great package, too.

06.03.2026 10:13 πŸ‘ 2 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Over the weekend, I started collecting/organizing a list of cool #rstats skills for LLMs at github.com/christopherk.... Please open an issue or PR in any awesome additions you see!

Includes a section for helpful posts like @ivelasq3.bsky.social's⬇️

04.03.2026 22:00 πŸ‘ 40 πŸ” 12 πŸ’¬ 2 πŸ“Œ 0
Preview
A Few Claude Skills for R Users – R Works The community has come together to create some great Claude Skills that you can try out today.

I rounded up a few Claude Skills for #RStats users.

Huge thanks to the creators who developed them. They share Skills for everything from tidyverse code to brand.yml files to learning while using AI.

Hope the list is useful, and please let me know what I missed! 🧑

rworks.dev/posts/claude...

03.03.2026 14:05 πŸ‘ 140 πŸ” 41 πŸ’¬ 4 πŸ“Œ 5
Screenshot of both sides of the printable version of the cheatsheet

Screenshot of both sides of the printable version of the cheatsheet

Screenshot of the web version of the recipes cheatsheet

Screenshot of the web version of the recipes cheatsheet

#tidymodels now has its very first cheatsheet! "Preprocessing data with {recipes}" is now available in Web and PDF versions here: rstudio.github.io/cheatsheets/... #rstats #posit #rstudio

02.03.2026 17:23 πŸ‘ 48 πŸ” 14 πŸ’¬ 0 πŸ“Œ 1
Video thumbnail

We live in a magical time for #dataviz. This map is just a static html page served on GitHub pages 🀯

It uses the incredible {pmtiles} #rstats package by @kylewalker.bsky.social to quickly filter through ~21M rows of data hosted on Cloudflare

vehicletrends.github.io/hhi-map/

25.02.2026 14:17 πŸ‘ 327 πŸ” 35 πŸ’¬ 10 πŸ“Œ 3
Diff of a change the 'Getting Started in R - Tinyverse Edition' manuscript with a nice data.table improvement: inside a pair of ( ) we can place each chained operation on its own line improving readability.  

I.e. we have

cw21 <- (  # use '(' to keep ops on separate lines
    cw[Time %in% c(0,21)]          # i: select rows
    [, weight := Weight]           # j: mutate
    [, Group := factor(Group)]
    [, .(Chick,Group,Time,weight)] # j: arrange
    [order(Chick,Time)]            # i: order
    [1:5]                          # i: subset
)

Diff of a change the 'Getting Started in R - Tinyverse Edition' manuscript with a nice data.table improvement: inside a pair of ( ) we can place each chained operation on its own line improving readability. I.e. we have cw21 <- ( # use '(' to keep ops on separate lines cw[Time %in% c(0,21)] # i: select rows [, weight := Weight] # j: mutate [, Group := factor(Group)] [, .(Chick,Group,Time,weight)] # j: arrange [order(Chick,Time)] # i: order [1:5] # i: subset )

Josh Goldstein emailed me a nice tip for @rdatatable.bsky.social chaining: if we start a chained `data.table` operation inside a set of parens, we are no longer subject to the 'REPL constraint' and can keep each operation on a line. See ALT text. #rstats

Now in the pdf at github.com/eddelbuettel...

25.02.2026 18:18 πŸ‘ 23 πŸ” 5 πŸ’¬ 2 πŸ“Œ 2

Awesome!

24.02.2026 20:17 πŸ‘ 0 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0
Post image

πŸ“¦ medicalcoder v0.8.0 is now on CRAN.

medicalcoder is a unified and longitudinally aware framework for ICD-based comorbidity assessment in #rstats

CRAN: cran.r-project.org/package=medi...

GitHub: github.com/dewittpe/med...

Website: peteredewitt.com/medicalcoder/

23.02.2026 17:46 πŸ‘ 12 πŸ” 5 πŸ’¬ 1 πŸ“Œ 0
Preview
Rapp 0.3.0 Rapp is an R front-end (like Rscript) that turns simple scripts into polished CLIs, with automatic argument parsing, generated help, and support for commands and installable launchers.

I’m happy to announce Rapp v0.3.0 β€” a package that makes it easy to build and share polished CLI applications written in R.

Read more: www.tidyverse.org/blog/2026/02...

18.02.2026 18:11 πŸ‘ 41 πŸ” 7 πŸ’¬ 0 πŸ“Œ 0
plumber2 hex

plumber2 hex

Announcing plumber2 0.2.0 for APIs in #RStats πŸ”§

plumber2 0.2.0 brings essential observability and authentication features to your R workflows:

Native support for traces and metrics, streamlined request handling for higher throughput, and more!

Read more: tidyverse.org/blog/2026/01...

17.02.2026 20:05 πŸ‘ 27 πŸ” 7 πŸ’¬ 0 πŸ“Œ 1
Screenshot of webRios running on an iPad, showing a four-pane layout. The top-left Editor pane has an R script with code completion suggestions visible for the plot function. The bottom-left Console pane shows executed R output. The top-right Environment pane displays a variable x with a numeric value of 1. The bottom-right area shows Plots, Files, Packages, and Help tabs. A custom R keyboard row with operators like the assignment arrow, pipe, brackets, and common R symbols is visible at the bottom.

Screenshot of webRios running on an iPad, showing a four-pane layout. The top-left Editor pane has an R script with code completion suggestions visible for the plot function. The bottom-left Console pane shows executed R output. The top-right Environment pane displays a variable x with a numeric value of 1. The bottom-right area shows Plots, Files, Packages, and Help tabs. A custom R keyboard row with operators like the assignment arrow, pipe, brackets, and common R symbols is visible at the bottom.

#webRios 1.1 is live! The big additions: code completion, customizable keyboard shortcuts, and a Data Import Wizard. Plus a better iPad four-pane layout (still a work in progress, more coming).

#RStats on your iPhone and iPad keeps getting better. Best experience on #iOS 26.

12.02.2026 06:34 πŸ‘ 28 πŸ” 8 πŸ’¬ 2 πŸ“Œ 0
Preview
GitHub - grantmcdermott/jgd: Lightweight R graphics device Lightweight R graphics device. Contribute to grantmcdermott/jgd development by creating an account on GitHub.

#rstats In very non-Superbowl news, here's an experimental πŸ“¦ for nice graphics display and UX in VS Code (and other potential front-ends).

github.com/grantmcdermo...

09.02.2026 00:47 πŸ‘ 12 πŸ” 8 πŸ’¬ 1 πŸ“Œ 0
Honeycake - Enterprise File Security. For Everyone.

Do you all have a need to encrypt files you generate before sending? I’ve been working with honeycakefiles.com to protect files. Just seeing if there might be interest in an r package to use it to protect your files if I can get one put together (with permission of the company)?

#rstats

05.02.2026 20:31 πŸ‘ 6 πŸ” 3 πŸ’¬ 3 πŸ“Œ 1

I’m intrigued. I’m just skimming the site, but I can see this being hella useful for folks in healthcare. There’s *a lot* of file sharing in healthcare, and those files would benefit from encryption during their journey.

My interest would double if there was an R package for it.

06.02.2026 01:31 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Preview
typeR - Typing Animation for R Code Simulate typing animation for R scripts, R Markdown, and Quarto documents with optional live code execution.

πŸŽ‰ Excited to announce that typeR is now on CRAN!

typeR simulates typing animations for R scripts - perfect for live coding demos and presentations.

Install: install.packages("typeR")
Docs: fgazzelloni.github.io/typeR/

#rstats #RPackage

05.02.2026 08:29 πŸ‘ 15 πŸ” 3 πŸ’¬ 0 πŸ“Œ 0
Preview
dplyr 1.2.0 dplyr 1.2.0 fills in some important gaps in dplyr's API: we've added a new complement to `filter()` focused on dropping rows, and we've expanded the `case_when()` family with three new recoding and re...

dplyr 1.2.0 is out now and we are SO excited!

- `filter_out()` for dropping rows

- `recode_values()`, `replace_values()`, and `replace_when()` that join `case_when()` as a complete family of recoding/replacing tools

These are huge quality of life wins for #rstats!

tidyverse.org/blog/2026/02...

04.02.2026 11:39 πŸ‘ 466 πŸ” 133 πŸ’¬ 12 πŸ“Œ 14
GitHub - eitsupi/arf: Alternative R Frontend β€” a modern R console written in Rust Alternative R Frontend β€” a modern R console written in Rust - eitsupi/arf

#rstats I've been testing out `arf`, a new R console written in Rust. Early days, but a v. smooth experience so far. Much simpler to install and link from VS Code than radian, for example, with better features too. github.com/eitsupi/arf

31.01.2026 16:48 πŸ‘ 43 πŸ” 10 πŸ’¬ 5 πŸ“Œ 0
Post image

Mood in minneapolis right now

24.01.2026 23:31 πŸ‘ 26104 πŸ” 5480 πŸ’¬ 142 πŸ“Œ 144

Sure thing!

25.01.2026 00:10 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Common Business Intelligence Functions for Financial Planning & Work Tools for financial planning analysis. This package provides functions for calculating financial metrics, analyzing time series data, and generating reports.

I spent way too long on this package and ultimately had to pull back on some ambition.

But the {fpa} package is on its way to CRAN.

If you do lots of time intelligence functions in #rstats- this package comes in very handy as it provides sugar syntax for common needs

usrbinr.codeberg.page/fpa/

24.01.2026 05:33 πŸ‘ 7 πŸ” 1 πŸ’¬ 2 πŸ“Œ 0

Hi guys!
I've spent the last 5 years building interactive reports for clients in RMarkdown and Quarto and looking at now creating Shiny apps. Curious what people would recommend as best practice frameworks, golem, rhino, or something else?

#RStats #Shiny

24.01.2026 13:10 πŸ‘ 4 πŸ” 1 πŸ’¬ 1 πŸ“Œ 0

If you’re just starting with Shiny, I’d start with {leprechaun} or {golem}. The {rhino} package is cool, but comes with a steeper learning curve b/c you’re learning {shiny} and {box} at the same time. I like {leprechaun} b/c it’s more minimalist; starting a {golem} can feel like a lot upfront.

24.01.2026 17:21 πŸ‘ 4 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0
GraphQL Server in R Server implementation of GraphQL <http://spec.graphql.org/>, a query language originally created by Facebook for describing data requirements on complex application data models. Visit <https://graphql...

gqlr v0.1.0 is now on CRAN! πŸŽ‰

A @graphql.org server for #rstats

New in 0.1.0:
✨ GraphiQL interactive IDE support
✨ Verbose error messages for easier debugging
πŸ› Fixed mutation execution validation
πŸ”§ Removed pryr dependency

πŸ“š: schloerke.com/gqlr/
πŸ™: github.com/schloerke/gqlr

#RStats #GraphQL

12.01.2026 19:51 πŸ‘ 4 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0
Preview
orbital 0.4.0 orbital 0.4.0 is on CRAN! orbital now has post processing support.

Excited to share that orbital 0.4.0 is now on CRAN with post processing support for tailor and a new show_query() method

#rstats #tidymodels
tidyverse.org/blog/2026/01...

12.01.2026 21:19 πŸ‘ 19 πŸ” 5 πŸ’¬ 0 πŸ“Œ 0

If you’re caching something like access tokens used to obtain data, then I’d be fine with the package purging old tokens. Seems like decent security hygiene.

07.01.2026 20:01 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

If you’re caching data users will be analyzing, I’d leave cache maintenance to users with appropriate helpers. I might have reasons for keeping data taken at a point in time, and if that data got deleted on package load, I might not be able to recover the exact data I had before.

07.01.2026 19:57 πŸ‘ 1 πŸ” 0 πŸ’¬ 2 πŸ“Œ 0