coalesce with wrapr

coalesce is a classic useful SQL operator that picks the first non-NULL value in a sequence of values.

We thought we would share a nice version of it for picking non-NA R with convenient operator infix notation wrapr::coalesce(). Here is a short example of it in action:

A more substantial application is the following.

library(“wrapr”)

d <- wrapr::build_frame( “more_precise_sensor”, “cheaper_back_up_sensor” | 0.31 , 0.25 | 0.41 , 0.5 | NA_real_ , 0.5 )

print(d)

more_precise_sensor cheaper_back_up_sensor

1 0.31 0.25

2 0.41 0.50

3 NA 0.50

d$measurement <- d$more_precise_sensor %?% d$cheaper_back_up_sensor

print(d)

more_precise_sensor cheaper_back_up_sensor measurement

1 0.31 0.25 0.31

2 0.41 0.50 0.41

3 NA 0.50 0.50

Related