Publications by Brian Lee Yung Rowe

The myth of the missing Data Scientist

07.01.2013

Much has been said about the dire shortage of Data Scientists looming on the horizon. With the spectre of Big Data casting shadows over every domain, it would seem we need nothing short of a caped wonder to help us see the light. Heralded as superheroes, Data Scientists will swoop into an organization and free the Lois Lane of latent knowledge fr...

6210 sym 4 img

Lambda.r 1.1.0 released

25.01.2013

This is a quick post to announce lambda.r version 1.1.0 is released and available on CRAN.1 This release has a handful of important new features and bug fixes: [new] Type variables in type constraints [new] Auto-replacement of function clauses [bug] Function types break in type constraints [bug] Zero argument functions don’t dispatch properly ...

3745 sym R (643 sym/7 pcs) 4 img

Lambda.r 1.1.1 released (and introducing the EMPTY keyword)

06.03.2013

I’m pleased to announce that lambda.r 1.1.1 is now available on CRAN. This release is mostly a bug fix release, although a few important enhancements were included.   [bug] Support Function in every type position (only supported for return type) [bug] Auto-replacing a function with 0 arguments fails [bug] Fix type inheritance [new] Functions ...

2838 sym R (339 sym/2 pcs) 4 img

Better logging in R (aka futile.logger 1.3.0 released)

10.03.2013

In many languages logging is now part of the batteries included with a language. This isn’t yet the case in R so most people make do with cat commands laced through their code. Then after development, when the system is being run for real, a lot of those cat statements are commented out so it doesn’t fill up log files and hide real error mess...

7214 sym R (1766 sym/13 pcs) 4 img

Futile.logger 1.3.3 RC available

29.05.2013

This is a preview release of futile.logger 1.3.3 so some people with feature requests can try out the code before I push to CRAN. A futile try/catch It is now possible to capture non-futile warnings and errors by wrapping a block in ftry, which is essentially a wrapper around tryCatch. The return value is the value of the expression or the messag...

1907 sym R (632 sym/4 pcs) 4 img 1 tbl

The equivalence of the ellipsis argument and an infinite set of closures

14.06.2013

This post is about a practical application of a topic I discuss in my book. In my book, I prove mathematically that the ellipsis in a function signature is equivalent to passing a closure with the same arguments bound to the closure. I’m currently modeling consumer spending behavior by modeling their credit and debit card transactions. I model ...

2797 sym R (378 sym/3 pcs) 12 img

Types in lambda.r versus classes in S4

10.07.2013

Here’s a quick example of the power of lambda.r and how it simplifies the programming model. On the r-devel mailing list, someone gave an example of extending a class via S4. It looks like this. setClass("foo", contains = "Date") setMethod("+", c("foo", "difftime"), function(e1, e2) callNextMethod()) This new class foo can then be used like a D...

1089 sym R (320 sym/4 pcs) 4 img

Detecting regime change in irregular time series

11.07.2013

In my current research, I am modeling consumer spending behavior to predict future income and spending. To do this I transform a set of transactions into a transaction stream, which is basically all the transactions for a given merchant or category (like ‘Gas Stations’). A conventional time series analysis is not appropriate since the series ...

3503 sym 10 img

Lambda.r 1.1.2 released to CRAN

11.07.2013

This was mostly a bug scrub to improve the stability and robustness of the package. As always, the package is on CRAN. At this point I consider this package stable and appropriate for production use. It is used in a number of my other packages (e.g. futile.logger, tawny) as well as at my current work. Squashed bugs Cannot dispatch to a function ...

1226 sym 4 img

Futile.logger 1.3.3 available on CRAN

17.07.2013

The latest version of futile.logger, which I previewed back in May is now on CRAN. Thanks to Kirill Müller, the documentation is now generated using Roxygen2. The package can also now be installed directly from github using devtools. Related To leave a comment for the author, please follow the link and comment on their blog: Cartesian Faith ...

638 sym 4 img