The TDDA book, https://book.tdda.info, is being serialised, online, for free.

You can read chapter 1 right now, and get access to the glossary, bibliography, figures, profiles, example data, checklists and more at https://book.tdda.info. Chapter 2 will be available next week and all chapters will be available by September this year.

You can get notified as new chapters are released by signing up at https://book.tdda.info/notify.

You can, of course, get print and ebook copies from all good booksellers and all sellers of good books, and the code 26SMA1 will get you 20% off at the publisher's site, https://www.routledge.com/Test-Driven-Data-Analysis/Radcliffe/p/book/9781032897158.

#TDDA #book #books #python #data #dataanalysis #ML #AI #TDD #Rlang #datascience

Version 3.0 of the tdda library and command-line tools has shipped:

python -m pip install -U tdda

or the usual variations.

Source: https://github.com/tdda/tdda.git
Docs: https://tdda.readthedocs.io/en/latest/
Book: https://book.tdda.info
Book 20% discount code: 26SMA1 at https://www.routledge.com/Test-Driven-Data-Analysis/Radcliffe/p/book/9781032897158

- Command-line tools for data validation (including constraint inference from training data)
- Reference testing (semantic testing of complex results)
- Automatic test-generation (any language)
- Format and utilities for working more safely with flat files (e.g. CSV files) with tdda.serial metadata and/or CSVW, Frictionless. Conversion utilities and format inference available.
- Utilities for unicode text (glyph counting and TK normal form, which goes beyond NFKC and NFKD)

3.0 includes
- Support for Pandas 3.0 (original, numpy_nullable, and pyarrow backends)
- Support for Polars in most areas
- Comprehensive parquet suport (replacing feather)
- Man pages for all commands
- Upgraded help docs for the whole library
- Associated book with the methodology
- 22 checklists for methodological support in areas unsuitable for code support.

#tdda #python #data #dataanalysis #ml #AI #rlang #datascience #testing #book #books #reproducibility #reproducibleresearch

All the top cats are reading the same book today.

Be like Mozzie and Alfie and get hold of a copy of the TDDA book on improving data analysis and data quality.

Use the discount code 26ESA2 at the publishers website for a 20% discount on anything format:

https://www.routledge.com/Test-Driven-Data-Analysis/Radcliffe/p/book/9781032896700

Available from all good booksellers and all sellers of good books, shipping Tuesday 19th June.

The matching 3.0 release of the tdda command-line tool and Python Library will ship on Monday with myriad new features.

I'm assured that it makes a great present for the geek in your life and for all the best pets.

#book #TDDA #data #dataanalysis #analysis #ML #AI #python #Rlang #books

"A little bit less than two years ago, building on work by Jim Hester and Kevin Ushey, Davis Vaughan completed a very impactful JavaScript file for the R community: an R grammar for the Tree-sitter parsing generator." by @rOpenSci

https://ropensci.org/blog/2026/04/02/tree-sitter-overview/

#dataScience #rlang

A Better R Programming Experience Thanks to Tree-sitter

Modern tooling for parsing, searching, formatting, editing R code, just like for other programming languages.

Wait! You can wrap pipelines in R in parentheses to directly use the last value?!?

#rlang #tidyverse #R

Want to use {pak} as backend for {renv} actions? Set the variable RENV_CONFIG_PAK_ENABLED = TRUE https://github.com/rstudio/renv/issues/1210 #renv #pak #reproducibility #RLang
TIL the R language allows "." in identifiers. That makes code list(..., nm.rm=TRUE) a bit more understandable.
#rlang

Having gotten my head fully around R pipes, I feel I need to write an article about it before I forget the fiddly details:

|>, %>%, with(), lambdas, %$%, ...

there are a lot of clever tricks for edge cases! (The with() hack I should have figured out for myself though!)

Also, %$% -- the exposition pipe -- why didn't any of you tell me about this one!?!? You're slacking!

#rlang #datascience #stats #statistics #rprogramming #tidyverse #tidydata #Rpipes #pipes!

Fresh WIP piece of #Archaea #phylogenetics data for a collaborator.

Those barplot margins are driving me crazy - it's actually throwing off the immediate impression of the data! (pink bars are essentially all 1/2 or less of the orange bars, which is pretty important in context) I really need to buckle down and get to hand-coding my trees from scratch using #rlang or #julialang soon.

Hmm. How's Julia ecosystem for phylogenetic trees these days?

#microbiology #bioinformatics

Ok, why do people keep doing this:

library(tidyverse)
library(lubridate)

when the first call automatically loads the package in the second call? Am I missing something here?

I see this **everywhere**!

#rlang #rlanguage #tidyverse #lubridate