@@ -21219,20 +21219,20 @@ test(2344.04, key(DT[, .(V4 = c("b", "a"), V2, V5 = c("y", "x"), V1)]), c("V1",
2121921219# conversions should not turn gforce off #2934
2122021220# lapply gforce should also work without .SD #5032
2122121221# support arithmetic in j with gforce #3815
21222- dt = data.table(a=1:4, b=1:2)
2122321222out = c("GForce FALSE", "GForce FALSE", "GForce TRUE")
21223+ dt = data.table(a=1:4, b=1:2)
2122421224test(2345.01, levels=0:2, dt[, max(as.character(a)), by=b, verbose=TRUE], data.table(b=1:2, V1=c("3","4")), output=out)
2122521225test(2345.02, levels=0:2, dt[, max(as.numeric(a)), by=b, verbose=TRUE], data.table(b=1:2, V1=c(3,4)), output=out)
21226- test(2345.03, levels=0:2, dt[, Map(sum, .SD), b, verbose=TRUE], dt[, lapply(.SD, sum), b], output=out)
21226+ dt = data.table(a=1:4, b=1:2)
21227+ test(2345.11, levels=0:2, dt[, Map(sum, .SD), b, verbose=TRUE], dt[, lapply(.SD, sum), b], output=out)
21228+ test(2345.12, levels=0:2, dt[, Map(sum, .SD, .SD), by=b, verbose=TRUE], output="GForce FALSE")
2122721229dt = data.table(a = NA_integer_, b = 1:2, c = c(TRUE, FALSE))
21228- test(2345.04 , levels=0:2, dt[, Map(weighted.mean, .SD, na.rm=c), b, .SDcols="a", verbose=TRUE], data.table(b=1:2, a=c(NaN, NA_real_)), output="GForce FALSE")
21229- test(2345.05 , levels=0:2, dt[,list(weighted.mean(a, na.rm=c)), b, verbose=TRUE], data.table(b=1:2, V1=c(NaN, NA_real_)), output="GForce FALSE")
21230+ test(2345.13 , levels=0:2, dt[, Map(weighted.mean, .SD, na.rm=c), b, .SDcols="a", verbose=TRUE], data.table(b=1:2, a=c(NaN, NA_real_)), output="GForce FALSE")
21231+ test(2345.14 , levels=0:2, dt[,list(weighted.mean(a, na.rm=c)), b, verbose=TRUE], data.table(b=1:2, V1=c(NaN, NA_real_)), output="GForce FALSE")
2123021232dt = data.table(a=1:2, b=1, c=1:4)
21231- out = c("GForce FALSE", "lapply optimization changed j", "GForce TRUE")
21232- test(2345.06, levels=0:2, dt[, lapply(list(b, c), sum), by=a, verbose=TRUE], output=out)
21233- test(2345.07, levels=0:2, dt[, c(list(sum(b), sum(c))), by=a, verbose=TRUE], output=out)
21234- test(2345.08, levels=0:2, names(dt[, lapply(list(b, c), sum), by=a]))
21235- dt = data.table(a=1:4, b=1:2)
21236- out = c("GForce FALSE", "GForce FALSE", "GForce TRUE")
21237- test(2345.09, levels=0:2, dt[, .(max(a)-min(a)), by=b, verbose=TRUE], output=out)
21233+ test(2345.21, levels=0:2, dt[, lapply(list(b, c), sum), by=a, verbose=TRUE], output=out)
21234+ test(2345.22, levels=0:2, dt[, c(list(sum(b), sum(c))), by=a, verbose=TRUE], output=out)
21235+ test(2345.23, levels=0:2, names(dt[, lapply(list(b, c), sum), by=a]))
2123821236dt = data.table(a=1:4, b=1:2)
21237+ test(2345.31, levels=0:2, dt[, .(max(a)-min(a)), by=b, verbose=TRUE], output=out)
21238+ test(2345.32, levels=0:2, dt[, .((max(a) - min(a)) / (max(a) + min(a))), by=b, verbose=TRUE], data.table(b=1:2, V1=c(0.5, 1/3)), output=out)
0 commit comments