@@ -156,11 +156,11 @@ test_that("fsummarise works like dplyr::summarise with across and simple usage",
156156
157157 expect_true(all_obj_equal(fsummarise(wld , across(is.numeric , bsum , na.rm = TRUE )),
158158 fsummarise(wld , across(is.numeric , fsum )) %> % dapply(unattrib , drop = FALSE ),
159- dplyr :: summarise(wld , dplyr :: across(where(is.numeric ), bsum , na.rm = TRUE ))))
159+ dplyr :: summarise(wld , dplyr :: across(where(is.numeric ), \( x ) bsum( x , na.rm = TRUE ) ))))
160160
161161 expect_true(all_obj_equal(fsummarise(mtc , across(NULL , bsum , na.rm = TRUE )),
162162 fsummarise(mtc , across(NULL , fsum )),
163- dplyr :: summarise(mtc , dplyr :: across(everything(), bsum , na.rm = TRUE ))))
163+ dplyr :: summarise(mtc , dplyr :: across(everything(), \( x ) bsum( x , na.rm = TRUE ) ))))
164164
165165 expect_equal(fsummarise(mtc , across(cyl : vs , bsum )),
166166 fsummarise(mtc , cyl = bsum(cyl ), across(disp : qsec , fsum ), vs = fsum(vs )))
@@ -189,15 +189,16 @@ test_that("fsummarise works like dplyr::summarise with across and simple usage",
189189 # Passing additional arguments
190190 expect_true(all_obj_equal(fsummarise(mtc , across(cyl : drat , bsum , na.rm = FALSE )),
191191 fsummarise(mtc , across(cyl : drat , fsum , na.rm = FALSE )),
192- dplyr :: summarise(mtc , dplyr :: across(cyl : drat , bsum , na.rm = FALSE ))))
192+ dplyr :: summarise(mtc , dplyr :: across(cyl : drat , \( x ) bsum( x , na.rm = FALSE ) ))))
193193
194194 expect_true(all_obj_equal(fsummarise(mtc , across(cyl : drat , weighted.mean , w = wt )),
195195 fsummarise(mtc , across(cyl : drat , fmean , w = wt )),
196- dplyr :: summarise(mtc , dplyr :: across(cyl : drat , weighted.mean , w = wt ))))
196+ dplyr :: summarise(mtc , dplyr :: across(cyl : drat , \( x ) weighted.mean( x , w = wt ) ))))
197197
198198 expect_true(all_obj_equal(fsummarise(mtc , across(cyl : drat , list (mean = weighted.mean , sum = fsum ), w = wt )),
199199 fsummarise(mtc , across(cyl : drat , list (mean = fmean , sum = fsum ), w = wt )),
200- dplyr :: summarise(mtc , dplyr :: across(cyl : drat , list (mean = weighted.mean , sum = fsum ), w = wt ))))
200+ dplyr :: summarise(mtc , dplyr :: across(cyl : drat , list (mean = \(x ) weighted.mean(x , w = wt ),
201+ sum = \(x ) fsum(x , w = wt ))))))
201202
202203 # Simple programming use
203204 flist <- list (bsum , list (bmean = bmean , bsum = bsum ), list (bmean , bsum )) # c("bmean", "bsum"), c(mean = "fmean", sum = "fsum")
@@ -225,11 +226,11 @@ test_that("fsummarise works like dplyr::summarise with across and grouped usage"
225226
226227 expect_true(all_obj_equal(fsummarise(gwld , across(is.numeric , bsum , na.rm = TRUE )) %> % setLabels(NULL ),
227228 fsummarise(gwld , across(is.numeric , fsum )) %> % replace_NA() %> % setLabels(NULL ),
228- dplyr :: summarise(gwld , dplyr :: across(where(is.numeric ), bsum , na.rm = TRUE ))))
229+ dplyr :: summarise(gwld , dplyr :: across(where(is.numeric ), \( x ) bsum( x , na.rm = TRUE ) ))))
229230
230231 expect_true(all_obj_equal(fsummarise(gmtc , across(NULL , bsum , na.rm = TRUE )) %> % setLabels(NULL ),
231232 fsummarise(gmtc , across(NULL , fsum )) %> % setLabels(NULL ),
232- dplyr :: summarise(gmtc , dplyr :: across(everything(), bsum , na.rm = TRUE ), .groups = " drop" )))
233+ dplyr :: summarise(gmtc , dplyr :: across(everything(), \( x ) bsum( x , na.rm = TRUE ) ), .groups = " drop" )))
233234
234235 expect_equal(fsummarise(gmtc , across(NULL , bsum , na.rm = TRUE ), keep.group_vars = FALSE ),
235236 fsummarise(gmtc , across(NULL , bsum , na.rm = TRUE )) %> % slt(- cyl ,- vs ,- am ))
@@ -261,18 +262,21 @@ test_that("fsummarise works like dplyr::summarise with across and grouped usage"
261262 # Passing additional arguments
262263 expect_true(all_obj_equal(fsummarise(gwld , across(c(" PCGDP" , " LIFEEX" ), bsum , na.rm = TRUE )) %> % setLabels(NULL ),
263264 fsummarise(gwld , across(c(" PCGDP" , " LIFEEX" ), fsum , na.rm = TRUE )) %> % setLabels(NULL ) %> % replace_NA(),
264- dplyr :: summarise(gwld , dplyr :: across(c(" PCGDP" , " LIFEEX" ), bsum , na.rm = TRUE ), .groups = " drop" )))
265+ dplyr :: summarise(gwld , dplyr :: across(c(" PCGDP" , " LIFEEX" ), \( x ) bsum( x , na.rm = TRUE ) ), .groups = " drop" )))
265266
266267 expect_true(all_obj_equal(fsummarise(gmtc , across(hp : drat , weighted.mean , w = wt )),
267268 fsummarise(gmtc , across(hp : drat , fmean , w = wt )),
268- dplyr :: summarise(gmtc , dplyr :: across(hp : drat , weighted.mean , w = wt ), .groups = " drop" )))
269+ dplyr :: summarise(gmtc , dplyr :: across(hp : drat , \( x ) weighted.mean( x , w = wt ) ), .groups = " drop" )))
269270
270271 expect_equal(fsummarise(gmtc , across(cyl : vs , weighted.mean , w = wt )),
271272 fsummarise(gmtc , cyl = weighted.mean(cyl , wt ), across(disp : qsec , fmean , w = wt ), vs = fmean(vs , wt )))
272273
273274 expect_true(all_obj_equal(fsummarise(gmtc , across(hp : drat , list (mean = weighted.mean , sum = fsum ), w = wt )),
274275 fsummarise(gmtc , across(hp : drat , list (mean = fmean , sum = fsum ), w = wt )),
275- dplyr :: summarise(gmtc , dplyr :: across(hp : drat , list (mean = weighted.mean , sum = fsum ), w = wt ), .groups = " drop" )))
276+ dplyr :: summarise(gmtc ,
277+ dplyr :: across(hp : drat , list (mean = \(x ) weighted.mean(x , w = wt ),
278+ sum = \(x ) fsum(x , w = wt ))),
279+ .groups = " drop" )))
276280
277281 # Simple programming use
278282 flist <- list (bsum , list (bmean = bmean , bsum = bsum ), list (bmean , bsum )) # c("bmean", "bsum"), c(mean = "fmean", sum = "fsum")
@@ -303,12 +307,14 @@ test_that("fsummarise miscellaneous things", {
303307 rsplit(mtcars , disp + hp ~ cyl ) %> % lapply(pwcorDF ) %> % unlist2d(" cyl" , " var" ) %> % tfm(cyl = as.numeric(cyl ))
304308 )
305309
306- if (identical(Sys.getenv(" LOCAL" ), " TRUE" )) # No tests depending on suggested package (except for major ones).
307- expect_equal(
308- mtcars %> % gby(cyl ) %> % smr(acr(disp : hp , pwcorDF , w = wt , .apply = FALSE )),
309- rsplit(mtcars , disp + hp + wt ~ cyl ) %> % lapply(function (x ) pwcorDF(gv(x , 1 : 2 ), w = x $ wt )) %> %
310- unlist2d(" cyl" , " var" ) %> % tfm(cyl = as.numeric(cyl ))
311- )
310+ if (identical(Sys.getenv(" LOCAL" ), " TRUE" )) { # No tests depending on suggested package (except for major ones).
311+ skip_if_not_installed(" weights" )
312+ expect_equal(
313+ mtcars %> % gby(cyl ) %> % smr(acr(disp : hp , pwcorDF , w = wt , .apply = FALSE )),
314+ rsplit(mtcars , disp + hp + wt ~ cyl ) %> % lapply(function (x ) pwcorDF(gv(x , 1 : 2 ), w = x $ wt )) %> %
315+ unlist2d(" cyl" , " var" ) %> % tfm(cyl = as.numeric(cyl ))
316+ )
317+ }
312318
313319 if (requireNamespace(" data.table" , quietly = TRUE )) {
314320 lmest <- function (x ) list (Mods = list (lm(disp ~ . , x )))
0 commit comments